WebSphere Service Registry and Repository Connectivity サンプルの実行
WebSphere Service Registry and Repository Connectivity サンプルの実行は、メッセージ・フローを通じて各メッセージを書き込むことから構成されます。サンプルを実行すると、
以下の状態でどのようなことが生じるかを理解できます。
- 入力 SOAP メッセージに、WSRR ノードのプロパティーをオーバーライドする情報が一切含まれない。
- 入力 SOAP メッセージに、新しいバージョンの Web サービスをサービス・レジストリーから取得するための実行時のオーバーライド情報が含まれる。
- WSRR ノードが、サービス・レジストリー内で一致する項目を見つけることができない。
詳しくは、WebSphere Service Registry and Repository Connectivity サンプルについてを参照してください。
WebSphere Service Registry and Repository Connectivity サンプルのセットアップを参照して.wsdl ファイルを
サービス・レジストリーにインポートしていない場合は、サービス・レジストリーから項目を取得する影響を観察できません。ただし、その場合でも、ノード・プロパティーの構成を検討し、前述の「不一致」の状況を確認することは可能です。
サンプルを実行するときに問題が発生する場合は、以下のコマンドを使用して、SOAPInput ノードが listen しているポートを調べます。
mqsireportproperties MB8BROKER -e WSRRConnectivitySample
-o HTTPConnector -n port
SOAPInput ノードがポート 7800 を listen していない場合は、
両方の WSDL 文書にある、ここで指定されたポートを変更して、それらを WebSphere Service Registry and Repository に再インポートする必要があります。
<wsdl:service name="DemoCustomerService">
<wsdl:port binding="impl:DemoCustomerSoapBinding" name="DemoCustomer">
<wsdlsoap:address location="http://localhost:7800/DemoCustomer_v20/services/DemoCustomer"/>
</wsdl:port>
</wsdl:service>
サンプルの実行時に引き続き問題を検出した場合は、
WebSphere Message Broker 資料の『サンプル実行時の問題の解決』を参照してください。
実行時のオーバーライド情報を含まない SOAP メッセージを使用してサンプルを実行する
実行時のオーバーライド情報を含まないメッセージを使用してサンプルを実行するには、次のようにします。
- 「ブローカー開発」ビューで、「WSRR Connectivity Message Flows」>「フロー・テスト」フォルダーの順に展開します。
- 「static_version.mbtest」をダブルクリックして、テスト・クライアントでファイルを開きます。
- 「エンキュー」をクリックします。
- 「メッセージの送信」をクリックします。元の Web サービスのバージョンを取得するための情報を含むメッセージが WSRR_IN キューに書き込まれます。
- テスト・クライアントで「デキュー」をクリックします。
- 「メッセージの取得」をクリックして、WSRR_OUT キューから入力メッセージを取得します。Demo Customer Web サービスのバージョン 1.0 が呼び出され、
その応答が出力キューに書き込まれます。
次のような応答を受け取ります。
<updateCustomerReturn>Updated Customer via WebService version 1.0</updateCustomerReturn>
実行時のオーバーライド情報を含む SOAP メッセージを使用してサンプルを実行する
実行時のオーバーライド情報を含むメッセージを使用してサンプルを実行するには、次のようにします。
- 「ブローカー開発」ビューで、「WSRR Connectivity Message Flows」>「フロー・テスト」フォルダーの順に展開します。
- 「override_version.mbtest」をダブルクリックして、テスト・クライアントでファイルを開きます。
- 「エンキュー」をクリックします。
- 「メッセージの送信」をクリックします。より新しいバージョンの Web サービスを取得するための情報を含むメッセージが WSRR_IN キューに書き込まれます。
- テスト・クライアントで「デキュー」をクリックします。
- 「メッセージの取得」をクリックして、WSRR_OUT キューから入力メッセージを取得します。Demo Customer Web サービスのバージョン 2.0 が呼び出され、その応答が出力キューに書き込まれます。
次のような応答を受け取ります。
<updateCustomerReturn>Updated Customer via WebService version 2.0 </updateCustomerReturn>
サービス・レジストリー内のどの項目にも一致しないメッセージを使用してサンプルを実行する。
実行時のオーバーライド情報を含むメッセージを使用してサンプルを実行するには、次のようにします。
- 「ブローカー開発」ビューで、「WSRR Connectivity Message Flows」>「フロー・テスト」フォルダーの順に展開します。
- 「no_match.mbtest」をダブルクリックして、テスト・クライアントでファイルを開きます。
- 「エンキュー」をクリックします。
- 「メッセージの送信」をクリックします。一致する WSDL 文書を取得しない情報を含むメッセージが WSRR_IN キューに書き込まれます。
- テスト・クライアントで「デキュー」をクリックします。
- 「メッセージの取得」をクリックして、WSRR_OUT キューから入力メッセージを取得します。一致する文書がサービス・レジストリーから取得されずに、メッセージが出力キューに書き込まれます。次のような応答を受け取ります。
<ServiceRegistry>No matching services!</ServiceRegistry>
サンプルのホームに戻る