JDeveloperのTCPパケット・モニターを使用すると、Webサービス・スタブの実行中のログを生成できます。 また、ダウンロードおよびJDeveloperでの登録が済んでいるWS-I準拠のアナライザを使用して、WebサービスがWS-I規格に準拠しているかどうかを確認することもできます。 アナライザはWebサービスのスタブに対して実行するため、サービスの検出、説明およびメッセージがレポート対象となります。
まず、TCPパケット・モニターの実行中に、Webサービスのスタブまたはプロキシを実行します。 バケット・モニターを停止すると、ログ・ファイルが作成されます。 次に、一連の標準アサーションに対するログ・ファイルを分析します。
注意: ファイアウォール内で作業する場合は、Webサービスの実行に使用しているマシンのIPアドレスが、JDeveloperのプロキシ・サーバー例外に含まれないようにする必要があります。 詳細は、「プロキシ設定とJDeveloper」を参照してください。
Webサービスのログを作成し分析するには、次のようにします。
_endPoint
変数は、完全に同じである必要があります。 詳細は、「埋込みサーバーで実行中のWebサービスの分析」を参照してください。
wsi-log.xml
ファイルとwsi-log.html
ファイルはナビゲータで作成およびリスト表示されますが、wsi-log.html
はJDeveloperで開かれます。
注意: TCPパケット・モニターの実行を停止するまで、ログ・ファイルはナビゲータで作成および表示されません。
wsi-log.xml
を選択し、ポップアップ・メニューから「WS-Iログ・ファイルの分析」を選択します。 WS-I Webサービス分析ウィザードが開きます。
wsi-report.html
がJDeveloperに表示されます。
Webサービスの分析を実行すると、問題の発生する原因が多数見つかります。 その中にはJDeveloperドキュメントで説明されていないものもありますが、次の2つの問題が発生する可能性があります。
生成したWebサービスに何の変更も加えていない場合や、加えた変更がWebサービスの動作に明らかに影響を与えていない場合、エラーがレポートされることがあります。 これは、SOAPサーバーへのデプロイを目的として開発されたWebサービスや、Oracle J2EE 1.3準拠のWebサービスが、以前の規格に準拠して生成されるためです。 WS-I規格に完全準拠しているのは、JAX-RPC Webサービスのみです。
外部WebサービスのWSDLのエンドポイントに含まれているマシン名が大文字のみまたは大文字小文字混合で記述されているのに対し、JDeveloperで生成されたスタブの_endPoint
変数のマシン名が小文字で記述されている場合に、このような現象が発生することがあります。 これと類似する事例を、「埋込みサーバーで実行中のWebサービスの分析」で説明しています。 対処方法としては、JDeveloperにWSDLをインポートしてナビゲータに表示し、WSDLのマシン名を小文字に編集します。 これにより、スタブを生成し、TCPパケット・モニターの実行中にスタブを実行できます。
WSDLをナビゲータにインポートするには、次のようにします。
wsi-report.html
の検出セクションでは、UDDIレジストリから検索するWebサービスで使用されるREGDATA
結果についてレポートします。 UDDIレジストリを使用しても検索されなかったWebサービスのレポートを作成した場合、検出セクションのInputs
がすべて消去されます。
Copyright © 1997, 2004, Oracle. All rights reserved.