JAX-RPC アプリケーション用の WSDL2Java コマンド

実行WSDL2JavaWSDL ファイルに対してコマンドライン ツールを使用して、Java™ API とデプロイメント記述子テンプレートを作成します。

[z/OS]のWSDL2Javaコマンドラインツールはサポートされていませんz/OS®プラットホーム。 この機能は、付属のアセンブリツールによって提供されます。 WebSphere® Application Server実行中z/OSプラットホーム。

Web サービス記述言語 (WSDL) ファイルに Web サービスの説明があります。 XML ベースのリモート プロシージャ コール (JAX-RPC) 用の Java API 1.1仕様は、Web サービスと対話する Java API マッピングを定義します。 WebサービスJava Platform, Enterprise Edition( Java EE )仕様は、Webサービスをデプロイするためのデプロイメント記述子を定義します。 Java EE環境。 のWSDL2Javaコマンドは WSDL ファイルに対して実行され、これらの仕様に従って Java API とデプロイメント記述子テンプレートを作成します。

ベストプラクティス: WSDL またはスキーマ内で絶対名前空間を使用するのがベスト プラクティスです。 デフォルトでは、WSDL2Java ツールは相対名前空間の使用を許可しません。 相対名前空間は、XML Plenary Interest Group では推奨されていません。また、相対名前空間を使用すると、Canonical XML バージョン 1.0 仕様により、XML デジタル署名が失敗します。 ただし、相対的な名前空間に依存するWSDLまたはスキーマが確立されている場合は、特定の条件下でallowRelativeNamespaceプロパティは、相対的な名前空間の制限を無効にするWSDL2Java道具。 詳しくは、プロパティーの説明を参照してください。
相対名前空間は絶対名前空間に変換できます。 以下は、相対名前空間の例です。
targetNamespace="MyRelNamespace"
プロトコルとベース URI 情報を追加することで、この例の相対名前空間を絶対名前空間に変更できます。
targetNamespace="https://www.sample.com/MyRelNamespace"

コマンド行構文

コマンド行構文は次のとおりです。
WSDL2Java [arguments] WSDL-URI

必須引数

WSDL-URI
Universal Resource Identifier (URI) を使用して、入力 WSDL ファイルのロケーションを指定します。 WSDL ファイルがローカル・ファイル・システムにある場合は、通常のファイル・パスも使用できます。

重要な引数

-役割Java EE役割
指定しますJava EE生成するファイルを識別する開発ロール。 有効な引数は以下のとおりです。
クライアント
develop-client 引数と deploy-client 引数の組み合わせです。
deploy-client
クライアント・デプロイメント用のバインディング・ファイルを生成します。
deploy-server
サーバー・デプロイメント用のバインディング・ファイルを生成します。
develop-client (デフォルト)
クライアント開発用のファイルを生成します。
develop-server
サーバー開発用のファイルを生成します。
サーバー
develop-server 引数と deploy-server 引数の組み合わせです。
-容器Java EE -容器
を示しますJava EE使用するコンテナ。 有効な引数は以下のとおりです。
クライアント
クライアント・コンテナーを指定します。
ejb
企業を示すJavaBeans (EJB) コンテナ。
none
コンテナーなしを指定します。
ウェブ
Web コンテナーを指定します。
クライアント・ロール (-role オプションを参照) の場合、デフォルトの引数は none です。 サーバー・ロールの場合、コンテナーは ejb または web でなければなりません。 開発とデプロイメントの両方に同じコンテナー・オプションを使用しなければなりません。
-出力ディレクトリ
発行されたファイルのルート・ディレクトリーを設定します。
-inputMappingFile マッピング・ファイル
Webサービスのファイル名を指定しますJava EEマッピング ファイル。
-introspect
新しい Web サービス API で既存の Java Bean を使用します。

シナリオによっては、新しいクラスを生成するのではなく、既存の Java クラスを使用する方が適している場合があります。 -introspectオプションは、WSDL2Javaクラスを生成するときに既存の Java クラスを調べるコマンド。 既存のクラスの、JAX-RPC 仕様に対する検証が行われます。 例:

既存のJava Beanがあるとします
public class Bean {
	public Date x;
}
WSDL ファイルは xxsd:dateTime と定義します。 -introspectオプションがない場合、WSDL2Java コマンドは、次の例のような Java Bean を生成します。
public class Bean {
	private Calendar x;
	public void setx(Calendar value) (x=value;)
	public Calendar getX() { return x;)
}
WSDL2Javaコマンドは -introspect オプションを使用して元の Java Bean を調べ、既存の Java Bean と互換性のあるクラスを生成します。
-クラスパスパス
Java クラスを検索するための代替クラスパスを定義します。
-noDataBinding
XML 型と Java 型のバインディングを無効にします。 代わりに、各XML型はjavax.xml.soap.SOAPElementSOAP with Attachments API for Java (SAAJ) 仕様で定義されたインターフェース。

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 Java インターフェイスの SOAP with Attachments API および JAX-RPC アプリケーション用のカスタム データ バインダーに関する情報を参照してください。

-help
ヘルプ・メッセージを表示して終了します。
-helpX
拡張オプションのヘルプ・メッセージを表示します。 オプションは以下のとおりです。
-verbose
生成されたファイルの名前を含む、処理情報を表示します。
-NStoPkg名前空間=パッケージ
デフォルトでは、パッケージ名は 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 引数を指定します。

-タイムアウト
指定する時間WSDL2Java コマンドは、諦める前に WSDL-URI が応答するのを秒単位で待機します。 デフォルトは 45 秒で、-1 はタイムアウトを使用不可にします。
-genResolver
absolute-import resolver クラスを生成します。 このクラスの目的は、WSDL URI が使用する、インポートされた WSDL ファイルの内容を記録することです。 このクラスはランタイムで使用され、また、今後の WSDL2Java コマンドの実行にも使用できます。 インポートされた WSDL ファイルがリモート環境にあり、アクセスできない場合には、 この柔軟性が役に立ちます。 インポート・リゾルバーを使用する場合は、 リモート WSDL ファイルの内容が実行時と開発時で異なる可能性は除外されます。 生成されるクラスの名前は _AbsoluteImportResolver.java になります。 このクラスをコンパイルして、生成された他のJavaクラスと一緒にパッケージ化します。WSDL2Java指示。
-useResolverリゾルバクラス
構文解析時に使用する absolute-import resolver クラスを指定します。 このクラスは、-genResolver オプションを指定した WSDL2Java コマンドの前回の実行時に作成されているはずです。 このクラスは、CLASSPATH 変数で使用可能でなければなりません。
-deployScope口論
サーバー実装をデプロイする方法を指定します。 有効な引数は以下のとおりです。
アプリケーション
すべての要求に対し実装クラスの 1 つのインスタンスを使用します。
要求
要求ごとに実装クラスの新規インスタンスを作成します。
セッション
セッションごとに実装クラスの新規インスタンスを作成します。

その他の引数

-ユーザーid
WSDL URI にアクセスするための、ログイン・ユーザー名を指定します。
-パスワードパスワード
WSDL URI にアクセスするためのログイン・ユーザー・パスワードを指定します。
-all
参照されていないタイプも含め、すべてのタイプの Java ファイルを生成します。
-allowRelativeNamespace true または false
相対名前空間を使用不可にするかどうかを指定します。 -allowRelativeNamespace=true を指定すると、相対名前空間の制限が使用不可になります。
トラブルを避ける:相対名前空間に依存する確立された WSDL ファイルまたはスキーマがあり、相対名前空間の使用を許可する定義済みのベンダー セットと相互運用しようとしている場合にのみ、このプロパティを使用します。
-debug
デバッグ情報を印刷します。
デバッグ情報引数を出力します
Java ファイルを生成します。 有効な引数は以下のとおりです。
  • IfNotExists (デフォルト)
  • Overwrite
  • いいえ
-javaSearch
-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 です。
- サービス wsdl サービス名
インストール済みの WSDL サービス専用のファイルを生成します。
-testCase
Web サービスをテストするための、JUnit テスト・ケースのテンプレートを生成します。 JUnit は、反復可能テストを作成するための簡単なフレームワークです。