Web Service Aggregation サンプルの拡張

サンプルは、以下の方法で拡張できます。

サンプルは、WSAggregationTargetWS メッセージ・フローとしてサンプルに実装されている単一のターゲット Web サービスを呼び出します。

ターゲット Web サービスへの動的な経路指定

ローカル環境を使用することによって、SOAPAsyncRequest ノード内のいくつかの WSDL 設定を動的にオーバーライドできます。 変更できる内容と変更方法について詳しくは、WebSphere Message Broker の資料のローカル環境の指定変更 (SOAPRequest ノード)を参照してください。

SOAPAsyncRequest ノードによって使用されている WSDL ファイルを動的にオーバーライドすることはできません。

このサンプルでは、WSAggregationMQtoSOAP.msgflow メッセージ・フローには SOAPAsyncRequest ノードが含まれています。 この設定をオーバーライドするには、このメッセージ・フローの Compute ノードの ESQL で適切なローカル環境値を設定します。

ターゲット Web サービスの名前を変更する場合、要求メッセージおよび応答メッセージが、このサンプルで提供されているメッセージとは異なってしまう可能性があります。 各メッセージ・フローを確認して、読み書きしているメッセージが新規のターゲット Web サービスと一致しているかどうか判別します。

代替ターゲット Web サービスの使用

異なる単一のターゲット Web サービスを呼び出すには、以下のステップを実行します。

  1. 代替 Web サービス用の WSDL ファイルをメッセージ・セット・プロジェクトに追加します。
  2. 代替 Web サービス用のデプロイ可能な WSDL ファイルを作成します。
  3. WSAggregationFanOut.msgflow メッセージ・フローで Compute ノードの ESQL を変更し、代替 Web サービスに送信するための適切なメッセージを生成します。
  4. 以下の手順を実行して、WSAggregationMQtoSOAP.msgflow メッセージ・フローを変更します。
    1. SOAPAsyncRequest ノードを、代替 Web サービス用の WSDL ファイルを使用するように変更します。
    2. SOAPAsyncRequest ノードで適切な Web サービス URL を設定します。
  5. ターゲット Web サービスをインプリメントします。
  6. WSAggregationSOAPtoMQ.msgflow メッセージ・フローを、代替 Web サービス応答を処理するように変更します。
  7. WSAggregationFanIn.msgflow メッセージ・フローを、代替 Web サービス応答からの結果を結合するように変更します。

ターゲット Web サービスが SOAPAsyncRequest ノードの WSDL ファイル内にある場合、前述のように設定を動的にオーバーライドできます。

2 つの異なるターゲット Web サービスの使用

2 つの個別のターゲット Web サービスを呼び出すには、以下のステップを実行します。

  1. 2 つの Web サービス用の WSDL ファイルをメッセージ・セット・プロジェクトに追加します。
  2. 2 つの Web サービス用のデプロイ可能な WSDL ファイルを作成します。
  3. WSAggregationFanOut.msgflow メッセージ・フローで Compute ノードの ESQL を変更し、2 つの Web サービスに送信するための適切なメッセージを生成します。
  4. 以下の手順を実行して、WSAggregationMQtoSOAP.msgflow メッセージ・フローを変更します。
    1. SOAPAsyncRequest ノードの 1 つを、最初の Web サービス用の WSDL ファイルを使用するように変更します。
    2. もう 1 つの SOAPAsyncRequest ノードを、2 番目の Web サービス用の WSDL ファイルを使用するように変更します。
    3. 各 SOAPAsyncRequest ノードごとに適切な Web サービス URL を設定します。
  5. ターゲット Web サービスをインプリメントします。
  6. WSAggregationSOAPtoMQ.msgflow メッセージ・フローを、2 つの Web サービス応答を処理するように変更します。
  7. WSAggregationFanIn.msgflow メッセージ・フローを、2 つの Web サービス応答からの結果を結合するように変更します。

ターゲット Web サービスが SOAPAsyncRequest ノードの WSDL ファイルのいずれかにある場合、前述のように設定を動的にオーバーライドできます。

3 つ以上の異なるターゲット Web サービスの使用

以下の例にあるように、さまざまな方法で 3 つ以上の個別のターゲット Web サービスを呼び出すことができます。

  1. ノードをさらに追加して、追加のターゲット Web サービスに経路指定します。
    1. すべての Web サービス用の WSDL ファイルをメッセージ・セット・プロジェクトに追加します。
    2. すべての Web サービス用のデプロイ可能な WSDL ファイルを作成します。
    3. WSAggregationFanOut.msgflow メッセージ・フローで、MQOutput ノードおよび AggregateRequest ノードをさらに追加および構成します。
    4. WSAggregationMQtoSOAP.msgflow メッセージ・フローで、MQInput ノード、Compute ノード、および SOAPAsyncRequest ノードをさらに追加および構成します。
    5. ターゲット Web サービスをインプリメントします。
    6. WSAggregationSOAPtoMQ.msgflow メッセージ・フローを、すべての Web サービス応答を処理するように変更します。
    7. WSAggregationFanIn.msgflow メッセージ・フローを、すべての Web サービス応答からの結果を結合するように変更します。
  2. 追加のターゲット Web サービスに動的に経路指定します。
    1. すべての Web サービス用の WSDL ファイルをメッセージ・セット・プロジェクトに追加します。
    2. すべての Web サービス用のデプロイ可能な WSDL ファイルを作成します。
    3. WSAggregationMQtoSOAP.msgflow メッセージ・フローで、WSDL ファイルごとに SOAPAsyncRequest ノードを構成します。
    4. WSAggregationMQtoSOAP.msgflow メッセージ・フローで、Compute ノードの ESQL を変更し、ローカル環境の設定を使用して Web サービス・パラメーターを動的に設定します。
    5. ターゲット Web サービスをインプリメントします。
    6. WSAggregationSOAPtoMQ.msgflow メッセージ・フローを、すべての Web サービス応答を処理するように変更します。
    7. WSAggregationFanIn.msgflow メッセージ・フローを、すべての Web サービス応答からの結果を結合するように変更します。

「Web Service Aggregation サンプルについて」に戻る

サンプルのホームに戻る