Java2WSDL コマンド行ツールは、Java クラスを Java API for XML-based RPC (JAX-RPC) アプリケーションの WSDL ファイルにマップします。
Client Development Kit (CDK) for z/OS には、Web サービスの開発とインプリメントに必要な Java2WSDL コマンド行ツールが含まれています。ツールを使用して開始するには、Client Development Kit のインストールを参照してください。
Java2WSDL コマンドは、Java API for XML-based Remote Procedure Call (JAX-RPC) 1.1 仕様に従って、 Java クラスを Web サービス記述言語 (WSDL) ファイルにマップします。
Java2WSDL コマンドは、 Java クラスを入力データとして受け入れ、入力クラスを表す WSDL ファイルを生成します。出力場所にファイルが存在する場合、 そのファイルは上書きされます。Java2WSDL コマンドによって生成される WSDL ファイルには、 入力クラスから自動的に派生する WSDL と XML のスキーマ構造が含まれています。これらのデフォルト値は、コマンド行引数でオーバーライド できます。
Java2WSDL コマンドはプロトコルに依存しません。つまり、Java2WSDL コマンドを実行するときに、 WSDL ファイルで SOAP と非 SOAP の両方のプロトコル・バインディングを生成するコマンド行オプションを指定できます。 生成できるバインディングごとに、Java2WSDL コマンドのバインディング・ジェネレーターによって、 そのバインディング用の WSDL が生成されます。
Java2WSDL [argument...] class
以下のコマンド行引数がサポートされています。
サービスの公開場所や URL を指定します。 この情報を提供しないと、 最終的な公開場所がまだ決まっていないという警告が出されます。 サービス・ロケーションは、通常 Web サービスがデプロイされるとオーバーライドされます。
最後の円記号 (¥) の後の名前は、-servicePortName 引数によってオーバーライドされていない限り、 サービス・ポートの名前になります。サービス・ポートのアドレス・ロケーション属性には、指定された値が割り当てられます。複数のエンドポイント・アドレスを指定できます。 -location オプションは、 必要なバインディング・タイプが 1 つだけである場合にのみ指定することをお勧めします。 複数のバインディング・タイプが要求される場合は、-x フラグを使用したコマンド行を介して、 プロトコル・バインディング固有のロケーション・プロパティーが渡されます。
java2wsdl -bindingTypes http, jms ¥ -x http.location=http://your.server.name:9080/StockQuoteService/services/StockQuote ¥ -x jms.location= ¥ jms:/queue?destination=jms/MyQueue&connectionFactory=jms/MyCF&targetService=StockQuote-location オプションを使用して -location オプション値が適用されるポートを判別するには、 バインディング固有のプロパティー値を介してエンドポイント URL を指定する必要があります。
出力 WSDL ファイルのパスおよびファイル名を指定します。指定がない場合は、 デフォルトの class.wsdl ファイルが現行ディレクトリーに書き込まれます。
出力 WSDL ファイルの作成に使用する入力 WSDL ファイルを指定します。 既存の WSDL ファイルからの情報はこのオプションで指定され、 入力 Java クラスと一緒に、出力生成のために使用されます。
java2wsdl -bindingTypes http, ejb -implClass my.pkg.MyEJBClass my.pkg.MySEI次のコマンドは、-bindingTypes オプションを使用して、 SOAP over HTTP バインディングおよび SOAP over JMS バインディングを生成する場合の例です。
java2wsdl -bindingTypes http, jms -implClass my.pkg.MyEJBClass my.pkg.MySEI
生成された WSDL ファイルで使用する WSDL スタイルを指定します。 スタイルの詳細については、Java、WSDL、および XML 間のマッピングを参照してください。 この引数は、-use 引数と一緒に使用されます。
RPC を -use ENCODED と一緒に指定すると、 style=rpc/use=encoded WSDL ファイルが生成されます。RPC を -use LITERAL オプションと一緒に指定すると、 style=rpc/use=literal WSDL ファイルが生成されます。DOCUMENT を -use LITERAL オプションと一緒に指定すると、 style=document/use=literal WSDL ファイルが生成されます。
-style 引数と一緒に使用する場合は、style と use のどのような組み合わせを WSDL ファイルに生成するかを指定します。 この組み合わせは、rpc と encoded、rpc と literal、または doc と literal のいずれかです。この設定は、 すべての SOAP バインディングに適用されます。 詳細については、『Java、Web サービス記述言語 (WSDL) および XML 間のマッピング』を参照してください。
HTTP (デフォルト) または JMS いずれかのための SOAP バインディングを生成します。 JMS を指定すると、WSDL ファイル名に jms という文字が追加され、 別のトランスポートの既存の WSDL ファイルが上書きされないようにします。トランスポート・オプションは 1 回しか指定できません。
このオプションは推奨されません。 -transport オプションの代わりに -bindingTypes オプションを指定すると、 非 SOAP に固有のバインディングを生成することができます。
portType エレメントに使用する名前を指定します。指定がない場合、 バインディング名はポート・タイプの名前になります。
バインディング・エレメントに使用する名前を指定します。指定がない場合、 バインディング名はポート・タイプの名前になります。
サービス・エレメントの名前を指定します。
サービスの名前を指定します。指定がない場合、 サービス名は -location 引数から派生した名前になります。
生成されている WSDL ファイルの ターゲット・ネーム・スペースを示します。デフォルト・ネーム・スペースの取得に使用されるアルゴリズムについては、 Java コード、WSDL、および XML 間のマッピングを参照してください。
Java パッケージのネーム・スペースへのマッピングを指定します。 パッケージにネーム・スペースがない場合、Java2WSDL コマンドはネーム・スペース名を生成します。 -PkgtoNS 引数を繰り返すことで、複数のパッケージのマッピングを指定できます。
WSDL ファイルで表されるその他のクラスを指定します。
Java2WSDL コマンドは、 WSDL ファイルのメッセージ部分の名前を構成するために、メソッド・パラメーター名を使用します。このコマンドは、クラスのデバッグ情報から 自動的にメッセージ名を取得します。クラスがデバッグ情報 なしでコンパイルされている場合、または、クラスがインターフェースの場合は、メソッド・パラメーター名は使用できません。この場合は、-implClass 引数を使用して、メソッド・パラメーター名の取得元となる代替クラスを指定できます。 そのクラスがインターフェースの場合、impl-class でクラスをインプリメントする必要はありませんが、 そのクラスと同じメソッドをインプリメントする必要があります。
冗長メッセージを表示します。
ヘルプ・メッセージを表示します。
拡張オプションのヘルプ・メッセージ、 またはバインディング・ジェネレーターでサポートされる各種オプションのヘルプ・メッセージを表示します。
ラップされたルールに従って WSDL ファイルを生成するかどうかを指定します。 このオプションは、use がリテラルの場合にのみ有効です。 デフォルトのオプションは true です。
Java2WSDL コマンドは、 継承されたクラスおよびインターフェースを検索して、-all 引数が指定された場合の WSDL ファイル操作用メソッドのリストを構成します。
また、Java2WSDL コマンドは、拡張 complexTypes を生成する際に、継承クラスとインターフェースを検索します。 java または javax で始まるパッケージ内にクラスまたはインターフェースが見つかると、 検索は停止します。 -stopClasses 引数を使用すると、これ以外にも検索を停止させるクラスを定義することができます。
サービス・エンドポイント・インターフェースから、 出力 WSDL ファイルで公開する必要のあるメソッド名のリストを指定します。 このリストは、スペースまたはコンマで区切られています。
デプロイメント情報に従って soapAction フィールドを設定します。
soapAction フィールドを二重引用符 ("") に設定します。
soapAction フィールドをオペレーション名に設定します。
インターフェースおよびインプリメンテーション WSDL ファイルが必要かどうかを指定します。
-outputImpl 引数を使用する場合に、 インターフェース WSDL ファイルのロケーションを指定します。
-outputImpl 引数を使用する場合に、 実装 WSDL ファイルのターゲット・ネーム・スペースを指定します。
Multipurpose Internet Mail Extensions (MIME) タイプを指定します。 このタイプは、バインディング・エレメント用の接続参照 (wsi:swaRef) 付きで Web Services Interoperability (WS-I) SOAP へのマップに使用されます。
extraClasses=com.ibm.Class1, com.sun.Class2,org.apache.Class3
void リターンのあるメソッドは片方向です。 JMS トランスポートでは、この引数がデフォルトです。
void リターンのあるメソッドは両方向です。 HTTP トランスポートでは、この引数がデフォルトです。
デバッグ・メッセージを表示します。
java2wsdl -x prop1=value1 -x prop2=value2これは、下記と同じです。
java2wsdl -x prop1=value1,prop2=value2-x オプションには、 必要に応じて、バインディング・ジェネレーターごとに個別に各コマンド行オプションを指定できるという柔軟性があります。 -x オプションで指定した値は、 同等のコマンド行オプションで指定した値がある場合、その値をオーバーライドします。
API の完全なリストについては、 API 文書を参照してください。 また、Web サービス: 学習用リソースにある Web サービスの開発についての項目も検討します。