WSDLドキュメントからwsimportでクライアントサポートコードを生成

1467 ワード

WSDLドキュメントからwsimportでクライアントサポートコードを生成
Generating Client-Support Code from a WSDL
Javaが提供する「wsimport」ツールでは、SOAPプロトコルに基づくWebサービスクライアント生成作業を容易に行うことができます.このツールは、対応するWSDLドキュメントのサービス記述からクライアントサポートコードまたは他の関連リソースを生成することができる.次のコマンドを入力して実行します.

% wsimport

    
実行すると、コマンドプログラムのヘルプが印刷されます.このコマンドツールを使用して、TimeServerサービスのクライアント開発に関するサポートコードを作成します.
ch 01を起動する.ts.TimeServerPublisherプログラムの後、次のコマンドを実行します.

 % wsimport -keep -p client http://localhost:9876/ts?wsdl 

  
実行すると、「client」サブディレクトリの下に2つのソースファイルと、それに対応するコンパイルされた2つのClassファイルが生成されます.コマンドラインの一番後ろのURLアドレスは、Perl、Ruby、Java言語で最初に作成されたクライアントがWebサービスに対応するWSDLドキュメントを要求したときに与えられたサービス契約アドレスと同じです.「-p」オプションを使用して、生成されたJavaパッケージ名を指定します.ここではパッケージ名として「client」を使用します.パッケージ名はJavaパッケージ命名規則に合致する任意の名前であり、wsimportツールは指定したパッケージ名でパッケージ対応サブディレクトリを作成します.「-keep」オプションは、コンパイルされたソースファイルを保持するかどうかを示すために使用されます.この例では、ソースファイルを検証として保持します.「-p」オプションはwsimportコマンドによるTimeServerのため重要です.classファイル名は、以前にコンパイルされたサービスエンドポイントインタフェース(SEI,Service Endpoint Interface)と同じ名前です.パッケージ名が指定されていない場合、wsimportは、サービス実装のパッケージ名をクライアントコードパッケージ名としてデフォルトで使用します.ここでは、パッケージ名として「ch 01.ts」がデフォルトで使用されます.簡単に言えば、「-p」が使用されますオプションを選択すると、wsimportツールで生成されたファイルによってコンパイルされたSEIファイルが上書きされないようにします.WSDLドキュメントがローカルに保存されている場合(たとえば、ファイルがts.wsdlと命名されている場合)、wsimportは次のように書くことができます.

  % wsimport -keep -p client ts.wsdl