課題 1.5: Web サービス・トラフィックの WS-I 準拠の検証
始める前に、『課題 1.4: 温度変換メソッドの実装』
を完了しておく必要があります。
Web サービス・トラフィックの WS-I 準拠の検証
SOAP エンベロープの要求と応答のペアが WS-I に準拠しているかどうかを確認するには、TCP/IP
モニターを通じて Web サービス・トラフィックを送信する必要があります。
「Web サービス」または 「Web サービス・クライアント」
ウィザードを使用して Web サービスを作成する場合、自動的に TCP/IP モニターをセットアップし、
実行することを選択できます。
あるいは、以下の手順を完了して、手動で TCP/IP モニターをセットアップすることもできます。
- サンプル・アプリケーションで、getEndPoint メソッドを呼び出す。
このエンドポイントを記録してください。
Web サービスのデフォルト・エンドポイントは次のとおりです。
- WebSphere または Apache Axis ランタイム環境: http://localhost:<port>/<web module
context root>/services/<port>
- IBM SOAP
ランタイム環境: http://localhost:<port>/<web module context root>/servlet/rpcrouter
- TCP/IP モニターの役目をするサーバーを作成する。
- 「ウィンドウ」メニューから、「設定」を選択する。
- 「設定」ウィンドウで、「インターネット (Internet)」を展開し、次に「 TCP/IP モニター 」を選択する。
- 「アクティビティー (activity)」チェック・ボックスがあるときに、「 TCP/IP モニター」ビューの表示 を選択する。
- 「TCP/IP モニター」リストの下で、「 追加 (Add)」をクリックする。
「新規モニター」ダイアログ・ボックスが開きます。
- 以下の設定値を指定する。
オプション |
説明 |
ローカル・モニター・ポート |
ローカル・マシン上の固有のポート番号を指定します。 |
ホスト名 |
サーバーが実行されているマシンのホスト名または
IP アドレスを指定します。 |
ポート |
リモート・サーバーのポート番号を指定します。 |
タイプ |
Web ブラウザーからの要求タイプが
HTTP で送信されるか、TCP/IP で送信されるかを指定します。
HTTP オプションが選択される場合に、複数の HTTP
要求が同じ接続で受信されるのであれば、Web ブラウザーからの要求は、HTTP
ヘッダーがリモート・マシンを指し、分割されるように変更されます。
TCP/IP オプションが選択される場合、すべての要求はバイトごとに送信されます。 |
- モニターを通じて Web サービスを経路指定するには、Web
サービス・クライアントのエンドポイントを変更する必要があります。
TCP/IP モニターは、ポート 9081 で listen します。
ステップ 1 で使用された Web ブラウザー・ウィンドウで、setEndPoint メソッドを呼び出し、
ポート 9081 を指すようにエンドポイントを変更してください。
たとえば、デフォルトは http://localhost:9081/web_module_context_root/servlet/rpcrouter です。
もう一度 getEndPoint メソッドを呼び出して、変更が実装されたことを確認してください。
- 「メソッド」ペインで「Web サービス・メソッド」を選択する。
このメソッドを呼び出してください。
- 「サーバー」ビューで「TCP/IP モニター」タブをクリックして、「TCP/IP
モニター」ビューに移る。
これにより、TCP/IP モニターから経路指定される要求と応答のペアが表示されます。
次の図のようになります。

- Web サービスの SOAP トラフィックが WS-I に準拠していることを確認するために、
のアイコンをクリックして、ログ・ファイルを生成することができます。
開かれたダイアログ・ボックスで、ログ・ファイルの名前を選択し、
そのログ・ファイルを保管したい場所を指定してください。
このログ・ファイルは、WS-I 準拠であるかどうか検証されます。
XML エディターでこのログ・ファイルを開いて、内容を調べることができます。
『要約』の内容を検討して、チュートリアルを終了してください。