JAX-RPC アプリケーション用の WSDL2Java コマンド
WSDL ファイルに対して WSDL2Java コマンド行ツールを実行し、Java™ API およびデプロイメント記述子テンプレートを作成します。
WSDL2Java コマンド行ツールは、z/OS® プラットフォームではサポートされません。
この機能は、z/OS プラットフォーム
で稼働する WebSphere® Application Server で提供されるアセンブリー・ツールによって提供されます。
Web サービス記述言語 (WSDL) ファイルに Web サービスの説明があります。 Java API for XML-based Remote Procedure Call (JAX-RPC) 1.1 仕様は、 Web サービスと対話する Java API マッピングを定義します。Web Services for Java Platform, Enterprise Edition (Java EE) 1.1 仕様は、 Java EE 環境で Web サービスをデプロイするデプロイメント記述子を定義します。WSDL2Java コマンドは、WSDL ファイルに対して実行され、 上記仕様に従った Java API およびデプロイメント記述子テンプレートを作成します。

targetNamespace="MyRelNamespace"
.
この例の相対名前空間は、次のように、プロトコル情報およびベース URI 情報を追加することにより、絶対名前空間に変更できます。targetNamespace="http://www.sample.com/MyRelNamespace"
コマンド行構文
WSDL2Java [arguments] WSDL-URI
必須引数
- WSDL-URI
Universal Resource Identifier (URI) を使用して、入力 WSDL ファイルのロケーションを指定します。 WSDL ファイルがローカル・ファイル・システムにある場合は、通常のファイル・パスも使用できます。
重要な引数
- -role Java EE role生成するファイルを示す Java EE 開発ロールを指定します。有効な引数は以下のとおりです。
- client
develop-client 引数と deploy-client 引数の組み合わせです。
- deploy-client
クライアント・デプロイメント用のバインディング・ファイルを生成します。
- deploy-server
サーバー・デプロイメント用のバインディング・ファイルを生成します。
- develop-client (デフォルト)
クライアント開発用のファイルを生成します。
- develop-server
サーバー開発用のファイルを生成します。
- server
develop-server 引数と deploy-server 引数の組み合わせです。
- client
- -container Java EE-container 使用する Java EE コンテナーを指定します。有効な引数は以下のとおりです。クライアント・ロール (-role オプションを参照) の場合、デフォルトの引数は none です。 サーバー・ロールの場合、コンテナーは ejb または web でなければなりません。開発とデプロイメントの両方に同じコンテナー・オプションを使用しなければなりません。
- client
クライアント・コンテナーを指定します。
- ejb
Enterprise JavaBeans (EJB) コンテナーを指定します。
- none
コンテナーなしを指定します。
- web
Web コンテナーを指定します。
- client
- -output directory
発行されたファイルのルート・ディレクトリーを設定します。
- -inputMappingFile マッピング・ファイル
Web Services for Java EE 1.1 マッピング・ファイルのファイル名を指定します。
- -introspect
新しい Web サービス API で既存の Java Bean を使用します。
シナリオによっては、 新規クラスを生成する代わりに既存の Java クラスを使用することができます。 -introspect オプションは、WSDL2Java コマンドがクラス生成時に既存の Java クラスを調べるように指示します。 既存のクラスの、JAX-RPC 仕様に対する検証が行われます。以下に例を示します。
既存の Java Bean があると仮定します。
WSDL ファイルは x を xsd:dateTime と定義します。 -introspect オプションを指定しない場合、 WSDL2Java コマンドは、次の例のような Java Bean を生成します。public class Bean { public Date x; }
WSDL2Java コマンドは、-introspect オプションを使用し、 元の Java Bean を調べて、既存の Java Bean と互換性のあるクラスを生成します。public class Bean { private Calendar x; public void setx(Calendar value) (x=value;) public Calendar getX() { return x;) }
- -classpath paths
Java クラスを検索する代替クラスパスを定義します。
- -noDataBinding
XML 型の Java 型へのバインディングを使用不可にします。 その代わり、個々の XML 型は、 SOAP with Attachments API for Java (SAAJ) 仕様で定義された javax.xml.soap.SOAPElement インターフェースにマップされます。
Java API for XML Web Services (JAX-WS) プログラミング・モデルは、SAAJ 1.2 および 1.3 をサポートします。
JAX-RPC プログラミング・モデルは、SAAJ 1.2 をサポートします。
Java プログラミング・モデルは、XML タイプのサブセット用の Java マッピングを定義します。XML 型には、 Java Bean またはプリミティブにマップできないものがあります。この場合、 WSDL2Java コマンドはその型を SAAJ SOAPElement にマップします。SAAJ SOAPElement は、 エレメントのメッセージでの汎用表記です。SOAPElement 上のメソッドを使用すると、 エレメントとその子を調べることができます。
シナリオによっては、 汎用的な SOAPElement マッピングのみを使用する方が適切な場合もあります。 SOAPElement の使用方法について詳しくは、SOAP with Attachments API for Java インターフェースおよび JAX-RPC アプリケーション向けカスタム・データ・バインダーに関する情報を参照してください。
サポートされる標準および仕様の完全なリストについては、Web サービス仕様書および API 文書を参照してください。
- -help
ヘルプ・メッセージを表示して終了します。
- -helpX
拡張オプションのヘルプ・メッセージを表示します。 オプションは以下のとおりです。
- -verbose
生成されたファイルの名前を含む、処理情報を表示します。
- -NStoPkg namespace=package
デフォルトでは、パッケージ名は WSDL ファイル内の名前空間ストリングから自動的に派生します。 例えば、名前空間の形式が http://x.y.com または urn:x.y.com である場合、 対応するパッケージは com.y.x です。
-NStoPkg 引数を使用して、独自のマッピングを提供できます。 この引数は、各固有名前空間マッピングごとに一度ずつ、 必要なだけ繰り返すことができます。 例えば、WSDL ファイル内に urn:AddressFetcher2 という 名前空間があり、この名前空間内のオブジェクトから生成されたファイルを パッケージ samples.addr に含める場合は、WSDL2Java コマンドに -NStoPkg "http://urn:AddressFetcher2/"=samples.addr 引数を指定します。
- -timeout seconds
WSDL2Java コマンドが WSDL-URI の応答を待機する時間を、秒単位で指定します。 デフォルトは 45 秒で、-1 はタイムアウトを使用不可にします。
- -genResolver
absolute-import resolver クラスを生成します。 このクラスの目的は、WSDL URI が使用する、インポートされた WSDL ファイルの内容を記録することです。 このクラスはランタイムで使用され、また、今後の WSDL2Java コマンドの実行にも使用できます。 インポートされた WSDL ファイルがリモート環境にあり、アクセスできない場合には、 この柔軟性が役に立ちます。 インポート・リゾルバーを使用する場合は、 リモート WSDL ファイルの内容が実行時と開発時で異なる可能性は除外されます。 生成されるクラスの名前は _AbsoluteImportResolver.java になります。 このクラスを、WSDL2Java コマンドにより生成されたもう一方の Java クラスと一緒にコンパイルおよび圧縮します。
- -useResolver resolver-class
構文解析時に使用する absolute-import resolver クラスを指定します。 このクラスは、-genResolver オプションを指定した WSDL2Java コマンドの前回の実行時に作成されているはずです。 このクラスは、CLASSPATH 変数で使用可能でなければなりません。
- -deployScope argument サーバー実装をデプロイする方法を指定します。 有効な引数は以下のとおりです。
- アプリケーション
すべての要求に対し実装クラスの 1 つのインスタンスを使用します。
- Request
要求ごとに実装クラスの新規インスタンスを作成します。
- Session
セッションごとに実装クラスの新規インスタンスを作成します。
- アプリケーション
その他の引数
- -user id
WSDL URI にアクセスするための、ログイン・ユーザー名を指定します。
- -password password
WSDL URI にアクセスするためのログイン・ユーザー・パスワードを指定します。
- -all
参照されないものも含め、すべての型の Java ファイルを生成します。
- -allowRelativeNamespace true または false
相対名前空間を使用不可にするかどうかを指定します。 -allowRelativeNamespace=true を指定すると、相対名前空間の制限が使用不可になります。
トラブルの回避 (Avoid trouble): このプロパティーは、相対名前空間に依存する設定済みの WSDL ファイルまたはスキーマがあり、相対名前空間の使用を許可するベンダーの定義済みセットの操作を希望する場合に限り使用します。gotcha
- -debug
デバッグ情報を印刷します。
- -genJava argument Java ファイルを生成します。有効な引数は以下のとおりです。
- IfNotExists (デフォルト)
- Overwrite
- いいえ
- -javaSearch argument-javaSearch オプションは、 -genJava オプションと一緒に使用されます。 -genJava IfNotExists の場合は、 -javaSearch オプションを使用してファイルの検出方法を決定します。
- File (デフォルト): 出力ディレクトリー内のファイルを検索します。
- Classpath: CLASSPATH 変数内のクラスを検索します。
- Both: 出力ディレクトリー内のファイルを検索するか、 CLASSPATH 変数内のクラスを検索します。
- -genXML argument.xml ファイルおよび .xmi ファイルを生成します。 有効な引数は以下のとおりです。
- IfNotExists (デフォルト)
- Overwrite
- いいえ
- -genImplSer true または false
生成された個々の Java Bean が、 java.io.Serializable を実装するかどうかを示します。デフォルトは false です。
- -genEquals true または false
生成された個々の Java Bean が、 equals メソッドおよび hashCode メソッドを有するかどうかを示します。デフォルトは false です。
- -noWrappedOperations
ラップされた操作の検出を使用不可にします。 要求および応答メッセージ用の Java Bean が生成されます。
- -noWrappedArrays
ラップされた配列の検出を使用不可にします。
- -fileNStoPkg ファイル名
マッピングをパッケージする名前空間のファイルを指定します。 デフォルトは、NStoPKG.properties です。
- service WSDL サービス名
インストール済みの WSDL サービス専用のファイルを生成します。
- -testCase
Web サービスをテストするための、JUnit テスト・ケースのテンプレートを生成します。JUnit は、反復可能テストを作成するための簡単なフレームワークです。