WSDL2Client ツールを使用した Web サービス・クライアントの作成

WSDL2Client ツールを使用すると、1 つ以上の WSDL 文書から完全にデプロイできる Web サービス・クライアントを生成し、 オプションでクライアントをアプリケーション・サーバーにデプロイすることができます。

前提条件:

このツールは、以下の 4 つのステージに従って使用します。

  1. -project 引数を指定してツールを実行し、 特定の WSDL 文書に記述されている Web サービスのスケルトンのクライアント実装テンプレートを作成する。
  2. テンプレートに実装コードを書き込み、ステージ 1 で生成したビルド・スクリプトを使用してコンパイルする。
  3. -clientType J2SE オプションを指定してあり、-genMain オプションを指定している場合は、 ステージ 1 で生成した実行スクリプトを使用してクライアントを実行する。
  4. -clientType オプションとして Application、EJB、または Servlet を指定してある場合は、 -createEar 引数を指定してツールを再び実行し、この実装から Web サービス・クライアント対応のアーカイブをビルドして、 アプリケーション・サーバーにデプロイする。

コマンド行のセットアップ

WSDL2WebServiceClient ツールを使用する前に、 次の方法で Web サービスのコマンド行をセットアップする必要があります。

  1. コマンド・プロンプトで Rational® Developer 製品の bin ディレクトリーに移動する。
  2. 次のバッチ・スクリプトを実行する。 
    • Windows®: setupenv.bat
    • Linux: .setupenv.sh
  3. Web サービスを作成するディレクトリーに移動する。 このディレクトリーをコマンド行テスト・ディレクトリーと呼びます。 Linux: このディレクトリーには書き込みアクセスが必要です。

 これで、WSDL2WebServiceClient ツールのステージ 1 を実行できます。

スケルトン Web サービス・クライアントの実装の作成

注: WSDL2Client ツールには 2 つのバージョンがあります。 WSDL2Client コマンドを実行すると、J2EE 1.4 を使用します。 WSDL2Client コマンドを使用すると、J2EE 1.3 を使用することになります。 J2EE 1.3 を使用する Web サービス・クライアントを作成する場合は、下のコマンドの WSDL2ClientWSDL2Client13 に置き換えて使用します。

スケルトン Web サービス・クライアントの実装を作成するには、コマンド・プロンプトに次のように入力します。

重要:
  • 最後の引数として、必ず <WSDL URI> を指定してください。この引数は大文字小文字が区別されます。 オプションおよび必須の引数のリストについては、 『WSDL2Client ツール』を参照してください。
  • 下に説明するように Web サービス・クライアント対応のアーカイブを作成する場合は、 スケルトン Web サービス・クライアント・インプリメンテーションを作成するときに -clientType 引数を指定する必要があります。

ヒント: -project に指定したコマンド行テスト・ディレクトリーのパス、 およびその名前をメモしておいてください。 この情報は、後で Web サービスをデプロイおよびテストするときに必要です。

-project <ProjectDir> 引数を指定してこのツールを実行すると、指定したプロジェクトの下に、 いくつかのサブディレクトリーを含む "client-side" というディレクトリーが作成されます。 これらのサブディレクトリーには、 複合型に対するシリアライザー・クラスとデシリアライザー・クラスを含むすべての必要な Java テンプレートと、 Web サービスの実装を作成するために必要なデプロイメント記述子が格納されます。 -clientType オプションと -genMain オプションを指定してある場合は、 クライアント・タイプ用に生成されたメイン・クラスの実装テンプレートもあります。

buildclient というビルド・スクリプトも生成され、 このすべてのコードをコンパイルするために利用できます。 -clientType J2SE 引数を指定してツールを実行した場合は、 runclient という名前の実行スクリプトも生成されます。

実装コードのコンパイル

コードをコンパイルするには、以下の手順を実行します。
  1. <ProjectDir> ディレクトリーに移動し、さらに client-side ディレクトリーに移動する。
  2. 実装コードに、.class ファイルを含む .jar ファイルやディレクトリーなどの依存関係がある場合は、 コンパイル・スクリプトを変更し、これらの依存関係の絶対パス名を USER_CLASSPATH 変数に追加する。次に例を示します。
    • Windows: set USER_CLASSPATH = c:¥MyJars¥webservice.jar;c:¥MyClasses
    • Linux: USER_CLASSPATH = /home/MyJars/webservice.jar:/home/MyClasses
  3. 次のコマンドを入力する: buildclient

J2SE Web サービス・クライアントの実行

J2SE Web サービス・クライアントを実行するには、以下の手順を実行します。
  1. <ProjectDir> ディレクトリーに移動し、さらに client-side ディレクトリーに移動する。
  2. 実装コードに、.class ファイルを含む .jar ファイルやディレクトリーなどの依存関係がある場合は、 コンパイル・スクリプトを変更し、これらの依存関係の絶対パス名を USER_CLASSPATH 変数に追加する。次に例を示します。
    • Windows: set USER_CLASSPATH = c:¥MyJars¥webservice.jar;c:¥MyClasses
    • Linux: USER_CLASSPATH = /home/MyJars/webservice.jar:/home/MyClasses
  3. 次のコマンドを入力する: runclient

Web サービス・クライアント対応のアーカイブの作成

Web サービス・クライアント対応のアーカイブを作成するには、以下の手順を実行します。
  1. <WSDK-install-dir>/bin ディレクトリーに移動する。
  2. コマンドを入力する。WSDL2Client [<optional arguments>] -createEar <File.ear> -clientType <Application | EJB | Servlet> <ProjectDir>
重要:
  • 最後の引数は <ProjectDir> でなければならず、"client-side" ディレクトリーを指定する必要があります。
  • -createEar 引数を正常に実行するためには、このタスクで既に説明したように、 スケルトン Web サービス・クライアント・インプリメンテーションを作成するときに -clientType 引数を指定する必要があります。

実装コードを作成してコンパイルし、-createEar <File.ear> 引数を指定して再びこのツールを実行すると、 新規または更新された EAR ファイルが出力されます。 また、Web サービスを実装するクライアント・サイド・クラスは、通常の場所である META-INF¥classes ディレクトリーに移動されます。 -clientType Servlet を指定した場合は、クライアント・サイド・クラスは WEB-INF¥classes ディレクトリーに移動されます。

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 1999, 2004. All Rights Reserved. (C) Copyright IBM Japan 2005