WebSphere Application Server Network Deployment for i5/OS, Version 6.1   
             オペレーティング・システム: i5/OS

             目次と検索結果のパーソナライズ化

Web Services Addressing SPI を使用するメッセージ・アドレッシング・プロパティーの指定および獲得

Web Services Addressing (WS-Addressing) システム・プログラミング・インターフェース (SPI) によって、 JAX-RPC Stub または Call インターフェース上のプロパティーを介して、 アウトバウンド・メッセージの SOAP ヘッダーに WS-Addressing メッセージ・アドレッシング・プロパティー (MAP) を追加することが可能になります。 ターゲット・エンドポイントがメッセージを受信したとき、SPI によって、エンドポイントがメッセージ・コンテキスト上のプロパティーを介して MAP を獲得することが可能になります。

このタスクについて

WS-Addressing サポートを使用している Web サービス開発者、または Web サービス・メッセージ上で、フォールトまたは応答エンドポイント参照などのメッセージ・アドレッシング・プロパティーを指定するために WS-Addressing SPI を使用しているシステム・プログラマーの場合は、このタスクを実行してください。

設定または取得できるプロパティーについては、Web Services Addressing SPI で、プロパティー・インスタンスの Java タイプとともに詳述されています。ほとんどのプロパティー、例えば宛先、応答、フォールト・エンドポイント参照などは、com.ibm.websphere.wsaddressing.EndpointReference 型です。 リレーションシップ・プロパティーは、com.ibm.wsspi.wsaddressing.Relationship クラスのインスタンスを含む java.util.Set オブジェクトです。 メッセージ間の関連を指定したいとき、例えば、応答メッセージ内で応答するメッセージの ID を指定するとき、リレーションシップを使用します。 アクション・プロパティーは、ターゲット・エンドポイント内で特定のメソッドまたは操作を識別する AttributedURI オブジェクトです。
重要: 宛先エンドポイント参照とアクション・プロパティーは、メッセージが WS-Addressing 準拠であるために必要です。

プロシージャー

  1. Web サービス・アドレッシング・エンドポイント参照を介して参照される Web サービス・アプリケーションの作成 で説明されているように、 クライアントで、サービスからエンドポイント参照を入手し、 それをご使用の Stub または Call オブジェクトと関連付けます。
  2. 必要なプロパティーのインスタンスを作成します。 例えば、ターゲット・サービスが応答を送信するためのエンドポ イント参照を指定したい場合は、com.ibm.websphere.wsaddressing.EndpointReference クラスのインスタンス を作成し、WSADDRESSING_REPLYTO_EPR プロパティーとして使用します。
  3. Stub または Call オブジェクトの setProperty(String property_name, Object value) メソッドを使用して、Stub または Call オブジェクトと関連付けることによって、 必要なプロパティーを設定します。 以下の例では、呼び出しオブジェクト上の宛先エンドポイント参照と応答エンドポイント参照を設定しています。
    import javax.xml.rpc.Call;
    ...
     // Associate the endpoint reference for the Web service. This property is required for the message
     // to be WS-Addressing compliant.
     call.setProperty(com.ibm.websphere.wsaddressing.WSAConstants.
                                 WSADDRESSING_DESTINATION_EPR, destinationEpr);
     // Associate the endpoint reference that represents the reply to endpoint reference
     call.setProperty(com.ibm.wsspi.wsaddressing.WSAConstants.
                                 WSADDRESSING_REPLYTO_EPR, replyToEpr);
    
    Stub または Call オブジェクトで呼び出しが発生したときに、 WebSphere Application Server はメッセージ・ヘッダーに適切な MAP を追加します。
  4. サーバー上で、 MessageContext.getProperty(String propertyName) メソッドを使用して、 メッセージ・コンテキストを介して、インバウンド・メッセージから MAP を取得します。 WebSphere Application Server はメッセージを受信したとき、スレッド上のメッセージ・コンテキスト内に MAP 情報を書き込み、それをサービスに対して使用可能にします。 メッセージ・コンテキストは、例えば、エンドポイント・エンタープライズ Bean のセッション・コンテキストを使用して、取得することができます。 メッセージ・コンテキストについて詳しくは、JSR-109 標準を参照してください。 以下の例は、応答エンドポイント参照を取得します。
    import javax.xml.rpc.handler.MessageContext;
    ...
    
      // If the endpoint is implemented as an enterprise bean, you can use its session context
      // to obtain the message context
      private SessionContext sessionContext;
      MessageContext context = sessionContext.getMessageContext();
    
      // Retrieve the reply endpoint reference
      replyToEpr = context.getProperty(WSADDRESSING_INBOUND_REPLYTO_EPR);
    



関連タスク
WS-Addressing SPI の使用: 拡張 Web サービス・アドレッシング・タスクの実行
関連資料
Web Services Addressing SPI
タスク・トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 8:28:52 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.iseries.doc/info/iseriesnd/ae/twbs_wsa_maps.html