3.3.2 WSDLのスタイルの指定

Java2WSDLコマンドでWSDLを生成するときに,WSDLのスタイルを指定します。WSDLのスタイルは「RPC」または「DOCUMENT」を指定します。

RPC
SOAP 1.1仕様のSection 7.1に従い,RPCの操作名と同じ名前を持つ要素で送信するデータ(パラメタまたは戻り値)をラップし,SOAPボディ要素の子要素として送信する形態です。
DOCUMENT
送信するデータをSOAPボディ要素の子要素としてそのまま送信する形態です。使用するXMLドキュメントは,エンコードスタイルまたは具体的なスキーマで定義されたルールに従っている必要があります。

また,WSDLのスタイルの指定に合わせてuse属性を指定します。use属性は,WSDLのmessage要素のpart要素がエンコード規則(例:SOAP encoding)を使用してエンコードされているかどうか,またはpart要素がmessage要素の具体的スキーマを定義しているかどうかを表します。use属性は,「LITERAL」または「ENCODED」を指定します。

LITERAL
スキーマを使用する場合に指定します。
ENCODED
エンコード規則を使用する場合に指定します。

WSDLのスタイルおよびuse属性は,Java2WSDLコマンドのオプションで指定します。オプションの指定値の組み合わせとサポート範囲を次の表に示します。

表3-5 Java2WSDLコマンドのオプション指定値の組み合わせとサポート範囲

スタイルの指定値use属性の指定値サポート
RPCLITERAL○(デフォルト値)
RPCENCODED
DOCUMENTLITERAL
DOCUMENTENCODED×
(凡例)
○:サポートされます。
×:サポートされません。

指定できるオプションの指定値の組み合わせ,特徴,およびWS-I Basic Profileの推奨パターンを次の表に示します。

表3-6 Java2WSDLコマンドのオプション指定値の組み合わせ,特徴,WS-I Basic Profileの推奨パターン

指定値の組み合わせ特徴WS-I Basic Profileの推奨パターン
RPC/LITERAL
(デフォルト値)
SOAPメッセージ内に型情報が含まれません。指定値を省略した場合に設定されるデフォルト値です。
RPC/ENCODEDSOAPメッセージ内に型情報が含まれるため,メソッド引数が多くなると,メッセージのサイズが大きくなります。×
DOCUMENT/LITERALSOAPメッセージ内に型情報が含まれません。
(凡例)
○:WS-I Basic Profileで推奨されている組み合わせです。
×:WS-I Basic Profileで推奨されていない組み合わせです。

WSDLのスタイルおよびuse属性の指定方法については,「9.1 Java2WSDLコマンド(WSDLの生成)」を参照してください。