Hitachi

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


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インタフェースのフィールド値の関係を次の表に示します。

表30‒1 MTOMアノテーションと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

(凡例)

○:有効です。

×:無効です。

−:該当しません。

注※

Webサービス開始時にjavax.xml.ws.WebServiceExceptionが発生します。

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 {
        ・・・・・・
    }
}