WSDL2WebService ツール参照

コマンド行で WSDL2WebService ツールを使用すると、IBM® WebSphere® ランタイム環境を使用して WSDL ファイルから Web サービスを生成できます。

構文

コマンド行をセットアップすると、次の構文と引数を使用してこのツールを実行できます。 

スケルトン Web サービス実装を作成するには、以下の手順を実行します。

注: 最後の引数として、必ず <WSDL URI> を指定してください。

Web サービス対応のアーカイブを作成するには、次のように入力します。

引数

注: -input オプションは除去されています。 インポートされた XSD 文書と WSDL 文書はすべて、 <WSDL URI> に指定された WSDL ファイルと同じディレクトリー内になければなりません。

スケルトン Web サービス実装

必須引数:

-createService <ServiceName>
Web サービスの固有名を指定します。 この名前は、Web サービスのコンテキスト・ルートとして使用します。
-project <ProjectDir>
出力のターゲット・プロジェクト・ディレクトリーの完全修飾パス名を指定します。 デフォルトは現行ディレクトリーです。
- <WSDL URI>
Web サービスを記述する WSDL ファイルの場所を指定します。 リモート、ローカルのどちらかのファイル・システムを指定します。

オプションの引数:

-host <HostName:PortNumber>
Web サービスをデプロイするホスト名またはポート番号を指定します。 デフォルト値は localhost:6080 です。
-genResolver
インポート・リゾルバーを生成します。インポート・リゾルバーには、 インポートされた XSD (XML スキーマ) ファイルからのすべての情報が含まれています。 このパラメーターについて詳しくは、注 1 を参照してください。
-clientType <J2SE | Application | Servlet | EJB>
指定したクライアントのタイプに対するスケルトン実装クラスを生成します。 この引数は、-genMain 引数と組み合わせて使用する必要があります。 -server-side-only 引数を既に指定している場合は、この引数を使用することはできません。
-clientEJBName <EJB client filename>
クライアント EJB ファイルの情報を使用して、 クライアント・アプリケーションの名前を指定したクライアント・サイドの webservicesclient.xml 記述子を構成します。 この引数の指定を行わない場合、 webservicesclient.xml をクライアント EJB ファイルに追加する前に手動で編集する必要があります。
-genMain <name of main class>
生成するメイン・クラスの名前を指定します。 この引数は、-clientType 引数と組み合わせて使用する必要があります。 -server-side-only 引数を既に指定している場合は、この引数を使用することはできません。
-contextRoot <ContextRoot>
Web サービスのコンテキスト・ルートを指定します。 デフォルト値は <ServiceName> です。
-type <EJB | Bean>
Java™ Bean または EJB のいずれかの実装専用のテンプレートを生成します。 デフォルトでは、Java Bean 用にテンプレートが作成されます。
-NStoPkg <list>
生成した Java テンプレート・クラスのデフォルト・パッケージ名のオーバーライドに使用する namespace=package マッピングのリスト (スペースで区切られているもの) を指定します。
-fileNStoPkg <propertiesFile>
namespace=package マッピングを含むプロパティー・ファイルの完全修飾パス名を指定します。

注: この引数を使用するときは、すべての名前空間参照に、 次のように円記号 (「¥」) を使用してエスケープされたコロン「:」が必要です。 http¥://my.namespace WSDL2WebService では、 エスケープされたコロンを含まない名前空間参照はすべて無視されます。

-all
WSDL 文書に定義されたすべての複合型の Java クラスを生成します。 デフォルトでは、WSDL 文書内で定義および参照の両方が行われたクラスのみが生成されます。 この引数は、-createService 引数が指定された場合にのみ使用します。
-server-side-only
サーバー・サイドの helper クラスのみを生成します。 デフォルトでは、サーバー・サイドおよびクライアント・サイドの両方の helper クラスが生成されます。
- wsSecDir <directory>
生成したデプロイメント記述子を WS セキュリティー情報によって構成するための、 テンプレートを含むディレクトリーへの絶対パスを指定します。 このディレクトリーには、 ibm-webservices-bnd.xmi ファイル、 および ibm-webservices-ext.xmi ファイルが含まれていなければなりません。 また、クライアント・サイド・バインディングを生成する場合は ibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmi も必要です。
-clientEJBName <EJB client filename>
クライアント EJB ファイルの情報を使用して、 クライアント・アプリケーションの名前を指定したクライアント・サイドの webservicesclient.xml 記述子を構成します。 この引数の指定を行わない場合、 webservicesclient.xml をクライアント EJB ファイルに追加する前に手動で編集する必要があります。
-user
リモート WSDL にアクセスするときに使用するユーザー名を指定します。
-password
リモート WSDL にアクセスするときに使用するパスワードを指定します。
-verbose
このツールの実行中に追加情報を表示します。
-help
ヘルプ情報を表示します。

Web サービス対応のアーカイブ

必須引数:

-createEar <TargetFile.ear>
ターゲット EAR ファイルの完全修飾パス名を指定します。 パス名が指定されていない場合は、作成されます。 パス名が指定済みの場合、 -add オプションによって指定された Web モジュールが必要に応じて追加/更新されます。
-project <ProjectDir>
アーカイブする Web サービス実装を 1 つ以上含むプロジェクト・ディレクトリーの完全修飾パス名を指定します。 これらのディレクトリーは、 -createService 引数を指定してこのツールによって生成されている可能性があります。

オプションの引数:

-add <services>
アーカイブに追加する Web サービスのリスト (スペースで区切られたもの) を指定します。 これらのサービスは、指定したプロジェクトの下に作成済みの Web サービス実装に対応しているはずです。 このオプションを使用しないと、該当するディレクトリーがすべて追加されます。 これらの名前のいずれかに対応する Web サービス・モジュールが EAR ファイルに既に存在する場合、 そのモジュールはディレクトリーの最新の内容で更新されます。
-verbose
このツールの実行中に追加情報を表示します。
-help
ヘルプ情報を表示します。

注: -deploy オプションはサポートされていません。

重要: ローカル・インポートを行う 1 セットの WSDL ファイルを使用して EJB Web サービスを作成するために、 WSDL2WebService コマンドを実行すると、EAR ファイルが生成されますが、 いったんそのファイルがワークスペースにインポートされ、 ユニット・テスト環境またはリモート・サーバーにデプロイされると、サーバー始動時に例外が起こります。 この例外は、ルーター Web プロジェクトでの WSDL の欠落が原因です。 このエラーを避けるには、以下のいずれかを行ってください。
  • 管理者コンソールを使用してスタンドアロンの WebSphere Application Server にデプロイする。
  • 一体構造の WSDL を使用する。つまり、-splitWsdl 引数を使用しない。
  • EJB プロジェクトの META-INF/wsdl ディレクトリーの下にあるすべての WSDL ファイルを手動でルーター Web プロジェクトの WEB-INF/wsdl にコピーする。
注 1: Web サービスの実行時にインターネットに接続しなくてもよいように、 -genResolver 引数を選択してリモートの絶対参照ローカルを立ち上げるだけです。 ローカルまたは相対インポートの場合には、使用しないでください。 また XSD ファイルをインポートする WSDL インポートを含む WSDL ファイルには -genResolver オプションを使用しないでください。 例えば、スキーマ・エレメントの外で WSDL インポートを持つのではなく、以下のようにします。
  <import location="a.xsd" namespace="http://namespaceA"/>
  <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://namespaceA" 
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
これは、スキーマ・エレメント内部のスキーマ・インポートで置き換えられます。
  <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://namespaceA" 
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <import schemaLocation="a.xsd" namespace="http://namespaceA"/>
ご利用条件 | フィードバック
(C) Copyright IBM Corporation 1999, 2004. All Rights Reserved. (C) Copyright IBM Japan 2005