Web サービスとして使用できる JavaBeans オブジェクトが既にある場合は、
HTTP アクセス可能な Java API for XML-based remote
procedure call (JAX-RPC) Web サービスを開発することができます。
始める前に
Java2WSDL コマンドを実行して、
Web サービス記述言語 (WSDL) ファイルを作成します。
Java2WSDL ファイルを実行するときは、
http とともに -bindingsTypes オプションを使用して、HTTP トランスポート・バインディングを設定してください。
以下に例を示します。
java2wsdl -bindingTypes http, jms -implClass my.pkg.MyEJBClass my.pkg.MySEI
このタスクについて
WebSphere Application Server は HTTP の使用をサポートし、Web サービス・クライアント要求をトランスポートします。
HTTP によって、Web サービス・クライアントおよびサーバーは SOAP メッセージを介して通信することができます。
SOAP は、Web サービスで使用される基本通信で、
Java 2 Platform Enterprise Edition (J2EE) 仕様、
および Java API for XML-based remote procedure call (JAX-RPC) の仕様の Web サービスをサポートします。
HTTP は 最も一般的に使用される Web サービスのトランスポートです。
既存の JavaBeans オブジェクトから HTTP アクセス可能 Web サービスを開発するには、以下のようにします。
プロシージャー
- HTTP バインディングと SOAP アドレスを WSDL ファイルに追加します。
Web サービスの WSDL ファイルを HTTP トランスポート上でアクセス可能にするには、
HTTP バインディングと、HTTP エンドポイントの URL ストリングを指定する SOAP アドレスが、
WSDL ファイルに含まれている必要があります。HTTP バインディングは wsdl:binding エレメントで、
このエレメントには、トランスポート属性が soap/http で終わる wsdlsoap:binding エレメントが含まれています。
HTTP バインディングに加えて、HTTP バインディングを参照する wsdl:port エレメントが、
WSDL ファイル内の wsdl:service エレメントに含まれている必要があります。wsdl:port エレメントには、
ロケーション属性が HTTP エンドポイントの URL ストリングを指定している wsdlsoap:address エレメントが含まれている必要があります。
Web サービスの開発時に、
エンドポイント URL ストリングとして file:unspecified_location などのプレースホルダーを使用することができます。
- アプリケーションにエンタープライズ Bean が含まれている場合は、
endptEnabler コマンドを使用して、エンタープライズ・アーカイブ (EAR) ファイルに HTTP エンドポイントを追加します。
デフォルトでは、endptEnabler コマンドは HTTP エンドポイントだけを追加します。
- Web サービス・アプリケーションをデプロイします。
- HTTP 接続のセキュリティーを構成します。
セキュア HTTP 接続にするには、
basicAuth アセンブリー・プロパティーを ibm-webservicesclient-bnd.xmi デプロイメント記述子ファイルに追加します。
ユーザー ID およびパスワードの属性を設定します。
- HTTP
バインディングのエンドポイント URL 情報を構成します。
WSDL パブリッシャーは、この部分的な URL ストリングを使用して、
EAR ファイルで定義されている各ポート・コンポーネントの実際の HTTP URL を生成します。
公開された WSDL ファイルは、Web サービスの呼び出しを必要とするクライアントで使用できます。
結果
Web サービス・クライアント要求のトランスポートに HTTP を使用する JavaBean オブジェクトの準備ができました。