名前
ijwsimport - WSDLからのJAX-WSのWebサービス・Webサービスクライアントで使用する資材の生成、およびWSDL一式の取得
形式
ijwsimport [「オプション」] wsdl_file
機能説明
WSDLから、WebサービスおよびWebサービスクライアントで使用する以下の資材を生成します。
サービスエンドポイントインタフェース (SEI)
サービスインタフェース
そのほかの必要なクラス
アプリケーションの実行に必要なクラスです。生成する資材に応じて必要なものが生成されます。
-keepオプションが有効な場合は、上記に加えて、以下の資材が保存されます。
ソースファイル
入力として読み込んだWSDLおよび関連するXML Schema一式
Webサービスクライアントの開発では、本コマンドで生成したクラスを使用してJAX-WSに従ったクライアントアプリケーションを作成してください。
既存のWSDL一式をベースにWebサービスを開発する場合は、本コマンドで生成した資材をWSDL一式およびエンドポイント実装とともに、Implementing Enterprise Web Services仕様に従った構成でアプリケーションのモジュール内に配置してください。
オプション
オプション名 | 説明 |
---|---|
-nogenerate | 資材の生成をせず、WSDL一式の取得だけを行います。-keepオプションが有効になりますが、クラスファイルもソースファイルも生成されません。 |
-b path | 生成内容を、指定されたJAX-WSまたはJAXBの外部バインディングファイルに従ってカスタマイズします。JAX-WSまたはJAXBの仕様に従ったバインディングファイルのパスを指定してください。複数のバインディングファイルを指定する場合は、ファイルごとに「-b 」から指定してください。 |
-catalog path | WSDLやXML SchemaからURLで参照されるXMLの取得先を、指定されたカタログファイルに従ってカスタマイズします。OASIS XML Catalogの仕様に従ったカタログファイルのパスを指定してください。指定したファイルへアクセスできない場合やカタログで指定した取得先へアクセスできない場合、本オプションの指定は無視されます。 |
-d directory | 最終生成物の生成・格納先を指定されたディレクトリに変更します。指定しない場合、カレントディレクトリに生成・格納されます。 |
-help | ヘルプメッセージを表示します。 |
-httpproxy:proxy | リモートのファイルをHTTP/HTTPSで取得する際に、指定されたHTTP/HTTPSプロキシサーバを利用します。proxyの値は以下の形式で指定します。(デフォルトのポートは8080) [user[:password]@]proxyHost:proxyPort 例: -httpproxy:myuser:mypassword@mydomain:8080 |
-keep | 読み込んだWSDL一式、および生成されたソースファイルを保持します。また、読み込んだデータが正しいWSDLではない場合も、読み込んだデータが保存されます。トラブル時の調査などのため、通常は本オプションを指定して、ソース資材を保管してください。
取得・格納されたWSDL一式の内容については、下記の注意事項を確認してください。 |
-p pkg | 生成するJava資材を、指定されたパッケージ名で生成します。本オプションの指定内容は、パッケージ名に対するすべてのWSDL/スキーマバインディングカスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。 |
-s directory | WSDL一式の格納先およびソースファイルの生成先を、指定されたディレクトリに変更します。指定しない場合、-dオプションで指定したディレクトリ、-dオプションも指定していない場合はカレントディレクトリに生成・格納されます。本オプション指定時は、-keepオプションも有効になります。 |
-verbose | 実行している処理に関する内部情報メッセージを出力します。 |
-version | バージョン情報を出力します。 |
-wsdllocation URI | javax.xml.ws.WebServiceClientアノテーションのwsdlLocation属性の値を指定されたURLで生成します。本オプションを省略した場合、本コマンドで指定したパスまたはURLで生成します。Webサービスクライアントは、実行時にjavax.xml.ws.WebServiceClientアノテーションのwsdlLocation属性の場所からWSDLを読み込みます。実行時にアクセスできるパスからWSDLを取得する場合は、本オプションで適切な値を指定してください。 |
-Xauthfile path | WSDLファイルのURLにユーザ名とパスワードによる認証が必要な場合、本オプションで指定した認証情報ファイルを利用して認証を行います。 例:
|
オペランド
オペランド名 | 省略 | 説明 |
---|---|---|
wsdl_file | 不可 | WSDLファイルのパスまたはURLを指定します。 |
戻り値
0: 正常終了
0以外: 異常終了
注意事項
本コマンドの実行時には、環境変数 PATH で当製品に含まれるJDK 8のjavaコマンドが有効になるように設定されている必要があります。
最終生成物があればアプリケーションの動作は可能ですが、トラブル時の調査などのため、通常は-keepオプションを指定して、それ以外の資材も取得して保管してください。
取得・格納されたWSDL一式は、取得されたままの内容です。他のXMLを参照している場合、参照先のファイルも自動的に取得・格納されます。しかし、参照元のファイル内容は更新されませんので、「参照先のURL」を記載している箇所も「参照先のファイルを取得・格納されたパス」には変更されません。そのため、参照先として取得・格納されたファイルは、参照元のファイルから参照されていません。
Webサービスを開発する場合は、作成済みのWSDL一式に基づいて開発する場合を除いて本コマンドによる生成物をアプリケーションに含める必要はありませんが、開発したモジュールをInterstage Java EE 7 DASサービスに配備した後、エンドポイントのURLに「?wsdl」を付加したURLからWSDL一式を取得して、インタフェース定義として保管・管理してください。
Webサービスをアプリケーションではなく作成済みのWSDL一式に基づいて開発する場合、使用するWSDLを適切に含んだモジュールをInterstage Java EE 7 DASサービスに配備後、エンドポイントのURLに「?wsdl」を付加したURLからWSDL一式を取得し、指定したWSDLが正しく公開されているか確認してください。ただし指定したWSDLに対して、上記で取得するWSDLはアドレス情報など必要な変更がなされています。
生成ファイルと同名ファイルがあった場合は上書きされます。
特別なオプション「-extension」を指定すると、標準仕様以外のWSDL拡張仕様対応や実験的機能実装を含む拡張機能が動作します。安易に指定すると、相互接続性や将来版のアプリケーションの互換性を損なう恐れや、サポート対象外や誤ったWSDLに対してもエラーが報告されずに正常終了する場合があります。本オプションを指定する場合は、入力のWSDLの内容を正しく理解し、指定の必要性を十分に検討した上で、WSDLに問題がないことをあらかじめ確認してください。
認証に用いる認証情報ファイルに記載する認証情報は暗号化されません。認証情報の漏洩を防ぐために、認証情報ファイルには適切なアクセス権を設定してください。
WSDLにトークンの複数形(NMTOKENS、IDREFS、ENTITIESなど)をデータ型として使用している場合、ObjectFactory.javaのコンパイル時に、以下の警告メッセージが出力されることがあります(XXXX/XXXXは生成されるパッケージにより異なります)。この場合、警告に対する対処は必要ありません。
注:XXXX/XXXX/ObjectFactory.javaの操作は、未チェックまたは安全ではありません。 |
使用例
ローカルに保存されたWSDLから資材を生成する場合の実行例を示します。
C:\Interstage\F3FMisje7\glassfish\bin\ijwsimport -keep C:\work\StockQuote\wsdl\StockQuoteProviderService.wsdl |
/opt/FJSVisje7/glassfish/bin/ijwsimport -keep /tmp/work/StockQuote/wsdl/StockQuoteProviderService.wsdl |
リモートのWSDL一式を取得する場合の実行例を示します。
C:\Interstage\F3FMisje7\glassfish\bin\ijwsimport -nogenerate -s dev\wsdl http://ws.example.com/StockQuote/StockQuoteProviderService?wsdl |
/opt/FJSVisje7/glassfish/bin/ijwsimport -nogenerate -s dev/wsdl http://ws.example.com/StockQuote/StockQuoteProviderService?wsdl |