11 WebLogic Server Webサービス
Webサービスは、企業のイントラネットまたはインターネット上で記述したり、公開したり、呼び出したりできる自己完結型のアプリケーションです。Webサービスは、Extensible Markup Language (XML)やHTTPなどの標準のWebプロトコルを使用してアクセスされるため、Web上の(通常はXMLとHTTPをすでに理解している)多様な異種アプリケーションは、自動的にWebサービスにアクセスし、お互いと通信できます。
Webサービスの主な利点は次のとおりです。
-
多様なハードウェアおよびソフトウェア・プラットフォームにわたる分散型アプリケーション間の相互運用性
-
Webプロトコルを使用してファイアウォールを通過する、アプリケーションへの容易で広範なアクセス
-
異種分散型アプリケーションの開発を容易にするクロス・プラットフォーム、クロス言語データ・モデル(XML)
ノート:
JAX-RPC APIは、バージョン12.2.1のOracle WebLogic Serverで非推奨となり、将来のリリースで削除されます。WebサービスはJAX-WSまたはJAX-RSを使用して開発することをお薦めします。この章の内容は次のとおりです。
Webサービスの構造
Webサービスは、次の3つの要素によって特徴付けられます。Webサービスの機能(公開するビジネス機能)、アクセス方法(公開された機能を使用するために必要な公開されたインタフェースのセット)、およびその場所(その機能を公開するWebサイト)。
Webサービスにできることは、Web Services Description Language (WSDL)という標準XMLの用語で記述されます。たとえば、銀行業務Webサービスは、口座の確認、取引明細書の印刷、資金の預入れや引出しを行う機能を実装します。これらの機能は、銀行Webサービスにアクセスするすべてのコンシューマが呼び出すことのできるWSDLファイル内に記述されています。このため、コンシューマ側でWebサービスについて把握しておく必要があることは、実行できる内容が記述されているWSDLファイルのことのみです。
Webサービスのクライアント(たとえば、デスクトップ・アプリケーション、Java Platform, Enterprise Editionポートレットなど)は、Webサービスに対してXMLドキュメント形式のリクエストを送信してWebサービスを呼び出します。Webサービスは、リクエストを処理し、その結果をXMLドキュメント形式でWebサービスのクライアントに返します。
Webサービスのクライアントは、Simple Object Access Protocol (SOAP)形式でメッセージを送信できます。SOAPはXML形式のメッセージング・フレームワークであり、分散環境で異種アプリケーション間での構造化された情報の交換を可能にします。そして、Webサービスはそのリクエストを処理し、SOAPメッセージでレスポンスを返します。
Representational State Transfer (REST) Webサービス、すなわちRESTful Webサービスを開発することもできます。RESTは、SOAPのように追加のメッセージ層を使用することなく、HTTPなどの標準化されたインタフェースでデータを転送するためのシンプルなインタフェースを記述したものです。RESTは、リソース(特定の情報のソース)と見なされて一意のURIによって特定できるステートレス・サービスを作成するための設計ルールを提供します。クライアントは、メソッドの標準化された固定セットであるURIを使用してリソースにアクセスし、リソースの表現が返されます。クライアントは、新しいリソース表現ごとに状態を転送するよう指示されます。
セキュアなメッセージ交換を行うため、Webサービスは、サービスにアクセスするためのユーザー名やパスワードのような資格証明や、レスポンスを暗号化するための資格証明を必要とする場合があります。
Webサービスの標準
Webサービスの標準を定義する仕様の多くは、業界全体で幅広く使用できるように記述されています。Oracle WebLogic Serverでの特定の仕様の実装では、その仕様で考慮されているすべての使用方法がサポートされていない場合もあります。しかし、Oracleでは、Webサービス仕様の考え得るあらゆる使用事例をサポートするよりも、Webサービス・プラットフォームの相互運用性の方をより重要視しています。
Webサービスは、次を含むXMLベースの企業標準のセットを必要とします。
-
サービス・コンシューマとサービス・プロバイダの間での統一的な通信を可能にするデータ形式であるXML
-
ビジネス・トランザクションで使用するXMLボキャブラリを記述するフレームワークであるXMLスキーマ。
-
サービスの実装において、構造化された情報を交換するためのプロトコルであるSOAP
-
サービスを記述するためのモデルを提供するXMLベースの言語であるWSDL
-
ポリシーを使用したサービスの機能、要件、一般的な特徴を記述するための柔軟性の高い拡張可能な文法を提供するフレームワークであるWS-Policy
Webサービスのためのロードマップ
WebLogic Serverのドキュメント・セットには、WebLogic Webサービスの開発および管理方法の理解に役立つ、いくつかの入門的なトピック、手順的なトピック、リファレンス的なトピックがサンプルとともに含まれています。
表11-1 Webサービスのためのロードマップ
主要なタスク | サブタスクと追加情報 |
---|---|
WebLogic Webサービスについてさらに詳しく理解する |
|
サンプルの使用(WebLogic Webサービス開発者向け) |
|
JAX-WSを使用したWebサービスの開発 |
|
RESTful Webサービスの開発 |
|
WebLogic Webサービスのデプロイと管理 |
|
WebLogic Webサービスのセキュリティ |