TCP/IP モニターを使用した Web サービスのテスト

Web サービスおよび Web サービス・クライアントの作成が済むと、TCP/IP モニターを使用して、Web サービスの SOAP トラフィックをモニターすることができます。

前提条件:

Web サービス・ウィザードまたは Web サービス・クライアント・ウィザードを使用して Web サービスを作成する際、TCP/IP モニターのセットアップと実行を自動的に行う方法を選択することができます。 あるいは、以下のステップを実行して、手動で TCP/IP モニターをセットアップします。

  1. サンプル・アプリケーションで、getEndPoint メソッドを呼び出します。このエンドポイントを記録しておいてください。 Web サービスのデフォルトのエンドポイントは、http://localhost:<port>/<web module context root>/services/<port> です。
  2. 以下の方法によって TCP/IP モニターとして動作するサーバーを作成します。
    1. 「ウィンドウ」メニューから、「設定」を選択します。
    2. 「設定」ウィンドウで、「実行/デバッグ」を展開し、「TCP/IP モニター」を選択します。
    3. アクティビティーがある場合 TCP/IP モニター・ビューを表示」チェック・ボックスを選択します。
    4. TCP/IP モニターのリストで、「追加」をクリックします。 「新規モニター」ダイアログが開きます。
    5. 以下の設定を指定します。
    オプション 説明
    ローカル・モニター・ポート ローカル・マシンの固有のポート番号を指定します。
    ホスト名 サーバーが稼働しているマシンのホスト名または IP アドレスを指定します。
    ポート リモート・サーバーのポート番号を指定します。
    タイプ Web ブラウザーからの要求タイプを HTTP または TCP/IP のどちらで送信するかを指定します。HTTP オプションを選択した場合、Web ブラウザーからの要求は HTTP ヘッダーがリモート・マシンを指すように変更され、同じ接続に複数の HTTP 要求が受信されると分離されます。TCP/IP オプションを選択すると、すべての要求がバイト送信されます。
    タイムアウト 再び接続を試みるまでにモニターに待機させる時間を指定します。
  3. モニター経由で Web サービスを送るためには、Web サービス・クライアントのエンドポイントを変更する必要があります。 TCP/IP モニターはポート 9081 で listen します。 ステップ 1 で使用した Web ブラウザー・ウィンドウで、setEndPoint メソッドを呼び出して、ポート 9081 を指すようにエンドポイントを変更します。 例えば、デフォルトは http://localhost:9081/web_module_context_root/servlet/rpcrouter です。 getEndPoint メソッドを再び呼び出して、変更が実装されたことを確認してください。
  4. 「メソッド」ペインで Web サービス・メソッドを選択します。このメソッドを呼び出します。
  5. 「サーバー」ビューの「TCP/IP モニター」タブを選択して、「TCP/IP モニター」ビューに変更します。 これにより、TCP/IP モニター経由で送られる、要求および応答のペアが表示されます。 以下の画面のようになります。
    要求および応答トラフィックの画面取り
  6. Web サービス SOAP トラフィックが WS-I 準拠であることを確認するには、WS-I 妥当性検査
アイコン アイコンをクリックして、ログ・ファイルを生成します。 開いたダイアログ・ボックスで、ログ・ファイルの名前を選択し、そのログ・ファイルを保管する場所を指定します。
このログ・ファイルが WS-I 準拠性について検証されることになります。このログ・ファイルを XML エディターで開いてその内容を調べることができます。