Hitachi

Cosminexus V11 アプリケーションサーバ Webサービス開発ガイド


16.2.20 javax.xml.ws.soap.MTOMアノテーション

javax.xml.ws.soap.MTOMアノテーションは,MTOM/XOP仕様形式の添付ファイルを使用するWebサービスに指定します。

javax.xml.ws.soap.MTOMアノテーションについて,次に説明します。

Webサービス側

Webサービス実装クラスだけで指定できます。SEIに指定すると無視されます。また,プロバイダ実装クラス(javax.xml.ws.providerインタフェースを実装するクラス)に指定した場合は動作が保証されません。

Webサービスクライアント側

ポートをインジェクトするフィールドまたはsetterメソッドに指定できます。詳細については,「10.21.1(4) フィーチャの有効化」を参照してください。それ以外のフィールドやメソッドに指定した場合は無視されます。

cjwsimportコマンドが生成するWebサービス実装クラスのスケルトンクラスを使用してMTOM/XOP仕様形式の添付ファイルを使用するWebサービスを作成する場合,Webサービス実装クラスのスケルトンクラスにはjavax.xml.ws.soap.MTOMアノテーションをマッピングしないので,javax.xml.ws.soap.MTOMアノテーションを指定する必要があります。なお,Webサービス実装クラスにjavax.xml.ws.soap.MTOMアノテーションを指定しても,Webサービス側のJAX-WSエンジンが発行するWSDLファイルやhwsgenコマンドが生成するWSDLファイルには,MTOM/XOP仕様形式の添付ファイルが使用されていることを示す要素や属性は出現しません。

javax.xml.ws.soap.MTOMアノテーションは,Webサービス開始時に参照されるだけです。hwsgenコマンドの実行時には解釈されません。

Webサービス側でjavax.xml.ws.soap.MTOMアノテーションを使用した例を次に示します。

・・・・・
@MTOM
@WebService(endpointInterface = "jaxwstp.example.service.ExamplePortType", targetNamespace = "http://service.example.jaxwstp/", serviceName = "ExampleService", portName = "ExamplePort")
public class ExampleBinding implements ExamplePortType {
〈この項の構成〉

(1) enabled要素(javax.xml.ws.soap.MTOM)

enabled要素は,WebサービスでMTOM/XOP仕様形式の添付ファイルを使用するかどうかを指定します。"true"を指定した場合はMTOM/XOP仕様形式の添付ファイルが使用でき,"false"を指定した場合はMTOM/XOP仕様形式の添付ファイルが使用できません。デフォルト値は"true"です。

(2) threshold要素(javax.xml.ws.soap.MTOM)

threshold要素は,WebサービスでMTOM/XOP仕様形式の添付ファイルが使用できるときに,バイナリデータをMTOM/XOP仕様形式の添付ファイルとして送信するためのしきい値です。javax.activation.DataHandlerクラス以外で,さらに指定された値を超えるバイナリデータ(threshold要素値≦送信するデータのサイズ)の場合,MTOM/XOP仕様形式の添付ファイルとして送信されます。デフォルト値は"0"です。