Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 基本開発編


4.3.2 サービス部品電文を作成する(Webサービスの場合)

利用するサービス部品がWebサービスの場合,サービス部品電文のXMLフォーマット定義ファイルを作成する必要はありません。XMLフォーマット定義ファイルは,サービスアダプタの作成時に自動的に作成されます。

ただし,サービスアダプタを作成する前に,「2.6.1 Webサービスを利用したサービス部品の適用範囲」に示す条件を満たしているWSDLを準備する必要があります。

注意事項:SOAP通信基盤でユーザ定義の例外をthrowするWebサービスの場合

SOAPアプリケーション開発支援機能のWSDL生成機能で生成したWSDLの通信スタイルがrpc形式の場合,WSDLを修正し,対応するサービスアダプタを作成する必要があります。

生成したWSDLの通信スタイルがdocument形式の場合,WSDLを修正する必要はありません。サービスプラットフォームでfaultを使用する場合,document形式のWSDLを使用することを推奨します。

WSDLの修正手順を次に示します。

  1. xsd:elementを定義します。

    xsd:element要素は,wsdl:definitions要素のtargetNamespace属性で示されたネームスペースと同じtargetNamespace属性を持つwsdl:types要素中のxsd:schema要素内に定義してください。

  2. wsdl:portType要素内のwsdl:operation要素中のwsdl:fault要素のmessage属性の値から対応するwsdl:message要素を取得し,内部に含まれるwsdl:part要素を確認します。

  3. 手順1.で追加したxsd:element要素にname属性を追加します。

    値は手順2.で取得したwsdl:part要素のtype属性のローカル名と同じ値にします。

  4. 手順3.と同様に,type属性を追加します。

    値は手順2.で取得したwsdl:part要素のtype属性と同じ値にします。

  5. 手順2.で確認したwsdl:part要素からtype属性を削除し,新たにelement属性を追加します。

    ネームスペースプリフィックスは,手順1.で参照したwsdl:types要素内のxsd:schema要素を示すプリフィックスにします。また,ローカル名は手順3.で追加したname属性と同じ値にします。

WSDLを修正したあとには,Webサービスそのものを再作成する必要があります。

次に示すコマンドを実行して,修正したWSDLからWebサービス用のスケルトンを再生成してください。

WSDL2Java -s <WSDLファイル>

WSDL2Javaコマンドの詳細については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「4.1.4 スケルトンおよびサービスデプロイ定義を生成する」を参照してください。