Java2WSDL ツールは、Java™ クラスを WSDL 文書にマップします。
Java2WSDL ツールは、Java クラスを入力として受け入れ、
このクラスを出力として表す WSDL ファイルを作成します。出力場所にファイルが存在する場合、
そのファイルは上書きされます。
Java2WSDL が生成する WSDL 文書には、WSDL と、入力クラスから自動的に派生される XML スキーマ構成体が含まれます。コマンド行引数は、これらデフォルト値の多くをオーバーライドすることができます。
構文
Java2WSDL ツールは、<WS-install-dir>¥appserver¥bin ディレクトリーに
あります。
Java2WSDL
[<arguments>] <class>
引数
必須引数:
<class>
- 次の Java クラスのいずれかの完全修飾名 (パッケージ名を含む):
- ステートレス・セッション EJB リモート・インターフェース (javax.ejb.EJBObject を拡張)
- サービス・エンドポイント・インターフェース (java.rmi.Remote を拡張)
- Java Bean
Java2WSDL ツールは、クラスを CLASSPATH に配置します。
オプション引数:
- -help
- ヘルプ・メッセージを表示します。
- -output <WSDLfile>
- 出力 WSDL ファイルのパスとファイル名を示します。これを指定しない場合、
デフォルトの WSDL ファイル <class>.wsdl が現行ディレクトリーに書き込まれます。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- 現行ディレクトリーの <class>.wsdl。
- 範囲
- システムに有効なファイル名。
- -location <location>
- サービスのロケーション (URL) を提供します。通常、この値は、Web サービスのデプロイ時に自動的に入力されます。デプロイすることなく、
ロケーションの URL を含む WSDL ファイルを生成するには、
この引数でロケーションを指定します。ロケーションを指定しない場合は、警告が表示され、
最終的なロケーションが決まっていないため、生成される WSDL ファイルが公開できないことが
指摘されます。最後のスラッシュまたは円記号 (¥) の後の名前は、
サービス・ポートの名前です (-servicePortName 引数でオーバーライドされていない場合)。
サービス・ポート・アドレス・ロケーション属性には、指定した値が割り当てられます。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- file:undefined_location。
- 範囲
- 有効な URL ストリング。
- -portTypeName <name>
- portType 要素に使用する名前を指定します。指定しない場合は、<class> 名が使用されます。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- <class>。
- 範囲
- 該当なし。
- -bindingName
- バインディング要素に使用する名前を指定します。指定しない場合、
バインディング名は、サービス要素名 (-serviceElementName 引数) に「SOAPBinding」を
付加したものになります。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- <serviceElementName> <SOAPBinding>.
- 範囲
- 該当なし。
- -serviceElementName <name>
- サービス要素の名前を指定します。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- <portTypeName> Service。ここで <portTypeName> は、-portTypeName 引数またはデフォルトの portTypeName で指定した
名前です。
- 範囲
- 該当なし。
- -servicePortName <name>
- サービスの名前を指定します。指定しない場合、サービス名は、
-location 引数から派生します。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- -location 引数または <class> 名の最後の円記号「¥」の後の名前。
- 範囲
- 該当なし。
- -namespace <targetNamespace>
- 生成される WSDL 文書のターゲット名前空間を表します。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- 名前空間にマップされる <class> のパッケージ名。
- 範囲
- 該当なし。
- -PkgtoNS <package> <namespace>
- Java パッケージの名前空間へのマッピングを指定します。パッケージに
名前空間が存在しない場合は、Java2WSDL が適切な名前空間名を
生成します。この引数を繰り返すことにより、複数のパッケージのマッピングを指定することができます。
- パッケージ:
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- 該当なし。
- 範囲
- Java パッケージ名。
- 名前空間:
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- 該当なし。
- 範囲
- 該当なし。
- -methods <method> [,<method>...]
- この引数を指定すると、クラス内の指定されたメソッドのみが WSDL ファイルに
エクスポートされます。メソッドのリストは、コンマで区切る必要があります。
これを指定しない場合は、このクラスで定義したすべてのメソッドが WSDL ファイルに
エクスポートされます。
- データ型
- ストリングのコンマ区切りリスト。
- 装置
- 該当なし。
- デフォルト
- <class> で定義したすべてのメソッド。
- 範囲
- <class> またはその親クラスで定義したメソッド。
-all 引数でも、
組み込むメソッドを選択できます。
- -all
- この引数を指定すると、Java2WSDL は親クラスを調べて、WSDL ファイルにエクスポートするメソッドのリストを決定します。 -methods 引数は、
-all が指定されている場合は使用されません。 -stopClasses は、
メソッドの上方向スキャンを終了する時期を指定する引数です。
- -implClass <impl-class>
- Java2WSDL ツールは、メソッド・パラメーター名を使用して WSDL メッセージ・パーツ名を
構成します。メッセージ名は <class> 内のデバッグ情報から取得されます。
このクラスがデバッグ情報を含まずにコンパイルされた場合、またはこれがインターフェースである場合は、
メソッド・パラメーター名が入手できません。この場合は、-implClass 引数を使用して、
メソッド・パラメーター名を取得する代替クラスを提供します。
<impl-class> は、<class> がインターフェースである場合、<class> を実装する必要はありませんが、<class> と同じメソッドを実装する必要があります。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- 該当なし。
- 範囲
- CLASSPATH 内の <class> と同じメソッドを実装する Java クラス。
- -stopClasses <parent> [,<parent>...]
- Java2WSDL は、継承されたクラスおよびインターフェースを検索して、
WSDL 操作のメソッドのリストを構成します (-all 引数が
指定されている場合)。Java2WSDL は、拡張された complexType を生成する際に、
継承されたクラスおよびインターフェースを検索します。この検索は、Java または Javax で
始まるパッケージ内にあるクラスまたはインターフェースが検出された時点で
停止します。 -stopClasses 引数を使用して、
検索を停止させるその他のクラスを定義することもできます。
- データ型
- ストリングのコンマで区切られたリスト。
- 装置
- 該当なし。
- デフォルト
- デフォルトの stopClasses は java.* および javax.* です。
- 範囲
- <class> の親クラス。
- -style RPC | DOCUMENT | WRAPPED
- 生成された WSDL で使用される WSDL スタイルを指定します。この引数は、
-use 引数と一緒に使用されます。
- RPC を -use ENCODED と同時に指定するか、
-use を省略すると、style=rpc/use=encoded WSDL が
生成されます。
- RPC を -use LITERAL と同時に指定すると、
style=rpc/use=literal WSDL が生成されます。
- DOCUMENT を -use LITERAL と同時に指定するか、
-use を省略すると、style=document/use=literal WSDL が
生成されます。
- WRAPPED を -use LITERAL と同時に指定するか、
-use を省略すると、「ラップされた」フォーマットの style=document/use=literal WSDL が
生成されます。
- DOCUMENT を指定すると、アンラップされた WSDL が
生成されます。
WRAPPED フォーマットの意味は次のとおりです。
- 要求と応答に対して complexType が生成されます。
- 要求の complexType は operation.request と同じ名前で、
そこには各入力パラメーターの要素が含まれています。
- 応答の complexType は、operation + "Response" の名前で、
そこには各出力の要素が含まれています。
- 要求メッセージは、「body」という名前の単一パーツを持つ要求 complexType を参照します。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- RPC.
- 範囲
- RPC、DOCUMENT、または WRAPPED。
- -use LITERAL | ENCODED
- -style 引数と一緒に使用して、
スタイルと使用の 4 つの組み合わせのどれが WSDL、RPC/Enc、
RPC/Lit、Doc/Lit、または Doc-wrapped/Lit に生成されるかを決定します。詳しくは、WSDL バインディングのセクションを
参照してください。
- データ型
- ストリング。
- 装置
- 該当なし。
- デフォルト
- スタイルが RPC の場合は ENCODED、それ以外は LITERAL。
- 範囲
- ENCODED または LITERAL。
- --outputWsdlMode <mode>
- <mode> の値によって、WSDL サービス・インターフェース文書または WSDL サービス実装文書を
生成します。この文書はそれぞれ、Interface か Implementation で
なければなりません。注: この引数の先頭には、
ハイフンを 2 つ付ける必要があります。こうしないと
-output 引数と区別ができません。
トラブルシューティング
Java2WSDL が生成する WSDL には、
予期しない要素が含まれることがあります。実行される変換について詳しくは、JAX-RPC 仕様を参照してください。
WSDL2Java ツールを使用して Java に再生成する際にコンパイルできない出力を作成する WSDL 文書を
作成することもできます。これは、Java から WSDL への JAX-RPC マッピングが
可逆性ではないためです。この問題が発生した場合は、WSDL ファイルを調べて、望ましい結果が得られるように、必要に応じてそのファイルを変更してください。