SOAP over JMS を使用して双方向 Web サービス通信を使用する場合は、Web サービス要求が行われるたびに JAX-RPC Web サービス・クライアントが一時的応答キューを作成しなくてもよいように、JAX-RPC Web サービス・クライアントに 永続 replyTo キューを構成しておくと便利です。
このタスクについて
重要: WebSphere Application Server Version
6.1 Feature Pack for Web Services は、本製品の機能を拡張して、Java API for XML-Based Web Services (JAX-WS) 2.0 の
プログラミング・モデルを導入できるようにします。
JAX-WS は、次世代の Web サービス・プログラミング・モデルであり、
Java API for XML-based RPC (JAX-RPC) プログラミング・モデルが提供する
基盤を提供します。戦略的 JAX-WS プログラミング・モデルを使用すると、
標準ベースの注釈モデルのサポートによって、Web サービスおよび Web クライアントの開発が
容易になります。
JAX-RPC プログラミング・モデルとアプリケーションは
引き続きサポートされますが、Web サービス・アプリケーションおよびクライアントを
新規に開発する場合は、
実装が容易な JAX-WS プログラミング・モデルをご利用ください。
サポートされる構成: Feature Pack for Web Services では、
Java Message Service (JMS) トランスポートとエンタープライズ Bean はサポートしていません。この製品がサポート
しているのは、HTTP トランスポートと、JAX-WS Web サービス・アプリケーションの Web コンテナー内での、
JavaBeans エンドポイントのホスティングのみです。Web サービスとしてホストされるエンタープライズ Bean を
開発するには、JAX-RPC プログラミング・モデルを使用する必要があります。この製品により、
JAX-WS クライアントは、Java Platform、Enterprise Edition (Java EE) コンテナー、
およびクライアント Java 2 Standard Edition (J2SE) 環境から
要求を発行することができます。sptcfg
永続
replyTo キューは、次の方法のいずれかで Web サービス・クライアントに構成されます。
- オプションの replyToDestination プロパティーを
JMS エンドポイント URL で指定します。
- replyTo キューを、クライアント JAX-RPC Stub または Call オブジェクトでプログラマチックに設定します。replyTo キューを Stub または Call プロパティーとして設定すると、
その Stub または Call オブジェクトを使用して呼び出されるすべての要求がその設定の影響を受けます。
- JVM システム・プロパティーとして replyTo キューを設定します。replyTo キューを
JVM システム・プロパティーとして設定すると、特定の JVM で実行される SOAP over JMS クライアントのすべてがその設定の影響を受けます。
異なる replyTo キューの使用を必要とする複数のクライアントが同じアプリケーション内にある場合は、このプロパティーをプログラマチックに設定することが最良の選択肢です。
注: これらの選択肢のいずれかを使用して永続 replyTo キューを設定する場合、
クライアント・サイドの構成のみが必要になります。Web サービス・プロバイダー側の構成は必要ありません。
プロシージャー
- オプションの replyToDestination プロパティーを
JMS エンドポイント URL で指定します。
jms:/queue?destination=jms/MyRequestQueue&connectionFactory=
jms/MyCF&replyToDestination=jms/MyReplyQueue&targetService=MyService
- replyTo キューを、クライアント JAX-RPC Stub または Call オブジェクトでプログラマチックに設定します。
クライアントは、JAX-RPC Stub または Call オブジェクトを使用して Web サービスを呼び出します。
((javax.xml.rpc.Stub)stub)._setProperty(com.ibm.wsspi.webservices.Consta
nts.JMS_REPLY_QUEUE_JNDI_NAME,
"jms/Permanent_Q");
このプロパティーの値はストリングです。
- JVM システム・プロパティーとして replyTo キューを設定します。
結果
これで、Web サービス・クライアントが永続 replyTo キューへの SOAP/JMS メッセージを受信できるようになりました。