スタブベースのWebサービスクライアント開発時にカタログ機能を利用するには,cjwsimportコマンドの-catalogオプションでカタログファイルを指定してください。-catalogオプションについては,「14.1(2) オプション一覧」を参照してください。
cjwsimportコマンドは,引数に指定したWSDLおよびそのWSDLが参照しているXMLスキーマの名前空間やロケーションを,カタログファイルのマッピング情報に従って別のWSDLまたはXMLスキーマのロケーションにマッピングします。cjwsimportコマンドは,マッピングされたロケーションにあるWSDLおよびXMLスキーマを読み込んでJavaコードを生成します。
cjwsimportコマンドでの,カタログ機能のマッピング対象を表27-1に,cjwsimportコマンドの引数に指定したWSDLの記述におけるマッピング対象を表27-2に示します。
表27-1 cjwsimportコマンドでのマッピング対象
項番 | マッピング対象 | サポート |
---|---|---|
1 | cjwsimportコマンドの引数に指定したWSDLのロケーション | × |
表27-2 cjwsimportの引数に指定したWSDLの記述におけるマッピング対象
項番 | 要素 | 属性 | サポート |
---|---|---|---|
1 | wsdl:import | namespace | × |
2 | location | ○ | |
3 | xsd:import | namespace | ○※ |
4 | schemaLocation | ○ | |
5 | xsd:include | schemaLocation | ○ |
Webサービスクライアントの開発時のカタログ機能は,次に示すロケーションや要素の値を変更しません。
これらのロケーションや要素の値を変更するには,cjwsimportコマンドの-wsdllocationオプションを利用してください。詳細については,「14.1 cjwsimportコマンド」を参照してください。
Webサービスクライアントの開発時に,カタログ機能を利用してWSDLが参照するXMLスキーマのロケーションをマッピングする例を次の図に示します。
図27-1 WSDLが参照するXMLスキーマのロケーションのマッピング例
この図の例では,WSDLにあるxsd:include要素のschemaLocation属性に,リモートのXMLスキーマのロケーションを指定しています。また,次のようにカタログ機能が無効な場合と有効な場合の流れを示しています。