30.2.3 MTOM/XOP仕様形式の添付ファイルの使用方法
WebサービスでMTOM/XOP仕様形式の添付ファイルを使用するには,Webサービス実装クラスにjavax.xml.ws.soap.MTOMアノテーションをアノテートします。MTOM/XOP仕様形式の添付ファイルを使用したWebサービス実装クラスの例を次に示します。
package com.sample; @MTOM @BindingType(・・・) public class UserInfoImpl implements UserInfo { public UserData setUserData(Image image) throws UserDefinedException { ・・・・・・ } }
また,javax.xml.ws.soap.MTOMアノテーションの代わりにjavax.xml.ws.soap.SOAPBindingインタフェースのフィールド値をjavax.xml.ws.BindingTypeアノテーションに指定することで,MTOM/XOP仕様形式の添付ファイルを使用できます。javax.xml.ws.soap.MTOMアノテーションとjavax.xml.ws.BindingTypeアノテーションに指定するjavax.xml.ws.soap.SOAPBindingインタフェースのフィールド値の関係を次の表に示します。
項番 |
MTOMアノテーション |
BindingTypeアノテーション |
MTOM/XOP仕様形式の添付ファイル |
||
---|---|---|---|---|---|
アノテーション有無 |
enabled要素値 |
SOAPBindingインタフェースのフィールド値 |
フィールド値の記述可否 |
||
1 |
あり |
true |
SOAP11HTTP_BINDING |
可 |
○ |
2 |
SOAP12HTTP_BINDING |
可 |
○ |
||
3 |
SOAP11HTTP_MTOM_BINDING |
可 |
○ |
||
4 |
SOAP12HTTP_MTOM_BINDING |
可 |
○ |
||
5 |
false |
SOAP11HTTP_BINDING |
可 |
× |
|
6 |
SOAP12HTTP_BINDING |
可 |
× |
||
7 |
SOAP11HTTP_MTOM_BINDING |
否※ |
− |
||
8 |
SOAP12HTTP_MTOM_BINDING |
否※ |
− |
||
9 |
なし |
− |
SOAP11HTTP_BINDING |
可 |
× |
10 |
SOAP12HTTP_BINDING |
可 |
× |
||
11 |
SOAP11HTTP_MTOM_BINDING |
可 |
○ |
||
12 |
SOAP12HTTP_MTOM_BINDING |
可 |
○ |
javax.xml.ws.soap.MTOMアノテーションの代わりにjavax.xml.ws.soap.SOAPBindingインタフェースのフィールドを使用したWebサービス実装クラスの例を次に示します。
package com.sample; @BindingType(SOAPBinding.SOAP11HTTP_MTOM_BINDING) public class UserInfoImpl implements UserInfo { public UserData setUserData(Image image) throws UserDefinedException { ・・・・・・ } }