WebSphere Application Server では、HTTP または Java Message Service (JMS) を使用して
サーバーとクライアント間の要求を移送する代わりに、Web サービスとして Enterprise JavaBeans (EJB) に直接アクセスできます。
このタスクについて
このタスクは、マルチプロトコル・テクノロジーによって実現できます。マルチプロトコル・テクノロジーでは、
Java API for XML-based remote procedure call (JAX-RPC) と Remote Method Invocation over Internet Inter-ORB Protocol (RMI/-IIOP) が同時に使用されます。
JAX-RPC を備えた RMI-IIOP では、WebSphere Java クライアントは、
標準の J2EE プログラミング・モデルを使用する代わりに、WSDL ファイルと JAX-RPC プログラミング・モデルを
使用して Enterprise Bean を呼び出すことができます。
Web サービスが Enterprise Bean によってインプリメントされると、マルチプロトコル JAX-RPC によって、Web サービス呼び出しパスを WebSphere Java クライアン
トのために最適化することができます。
この方法により、より優れたパフォーマンスが得られ、
Web サービスとしては標準ではない、クライアント・トランザクションに対するサポートを取得することができます。
Web サービス記述言語 (WSDL) ファイルの EJB バインディングを使用して Web サービス要求をトランスポートするには、
以下のようにします。
プロシージャー
- (オプション) 非 SOAP プロトコル・バインディングを含む WSDL ファイルを作成します。
Java2WSDL コマンドの -bindingTypes オプションを使用すると、
非 SOAP プロトコル・バインディングを含む WSDL ファイルを作成することができます。
-bindingTypes オプションは、WSDL 文書の出力に書き込まれるバインディング・タイプを指定します。
-bindingTypes オプションの使用に関する詳細は、
Java2WSDL の項目を参照してください。
以下のコマンドは、my.pkg.MySEI という名前のサービス・エンドポイント・インターフェース、
および my.pkg.MyEJBClass という名前の EJB インプリメンテーション用に SOAP over HTTP および EJB バインディング
を生成する場合に使用可能な例です。
java2wsdl -bindingTypes http, ejb -implClass my.pkg.MyEJBClass my.pkg.MySEI
- (オプション) EJB バインディングを追加する既存の WSDL ファイルを取得します。
- EJB バインディングを WSDL ファイルに追加します。
- wsejb 接頭部を使用してエンドポイントを含むポート・アドレスを追加します。
- Web サービス・アプリケーションをデプロイします。
- 。
WSDL パブリッシャーは、この部分的な Web アドレス・ストリングを使用して、
Enterprise Bean JAR ファイルで定義されている各ポート・コンポーネントの実際の Enterprise Bean
の Web アドレスを生成します。
公開された WSDL ファイルは、Web サービスの呼び出しを必要とするクライアントで使用できます。
結果
JAX-RPC プログラミング・モデルを使用する Web サービス・クライアントからアクセス可能な EJB の準備ができました。
RMI-IIOP プロトコルが、SOAP over HTTP の代わりに使用されます。