WebSphere Application Server for z/OS, Version 6.1   
             オペレーティング・システム: z/OS

             目次と検索結果のパーソナライズ化

例: WSIF を使用した SOAP 添付ファイルの受け渡し

ここでは、コード・フラグメントの例を挙げて、WSIF を使用して添付ファイル付き SOAP メッセージを渡す方法を示します。

以下のコード・フラグメントを使用して、トピック例: SOAP 添付ファイルの WSDL 拡張を作成するのサンプル WSDL で説明したサービスを呼び出すことができます。

import javax.activation.DataHandler;
. . .
DataHandler dh = new DataHandler(new FileDataSource("myimage.jpg"));
WSIFServiceFactory factory = WSIFServiceFactory.newInstance();
WSIFService service = factory.getService("my.wsdl",null,null,"http://mynamespace","abc");
WSIFOperation op = service.getPort().createOperation("MyOperation");
WSIFMessage in = op.createInputMessage();
in.setObjectPart("attch",dh);
op.executeInputOnlyOperation(in);

DeploymentDescriptor.xml ファイル内で関連付けられる型マッピングは、 使用している SOAP サーバーによって異なります。 例えば、SOAP 2.3 で Tomcat を使用している場合、DeploymentDescriptor.xml ファイルには、 以下のような型マッピングが含まれます。

<isd:mappings>
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
 xmlns:x="http://mynamespace"
 qname="x:datahandler"
 javaType="javax.activation.DataHandler"
 java2XMLClassName="org.apache.soap.encoding.soapenc.MimePartSerializer"
 xml2JavaClassName="org.apache.soap.encoding.soapenc.MimePartSerializer" />
</isd:mappings> 

この場合、バックエンド・サービスは、以下のシグニチャーに よって呼び出されます。

public void MyOperation(DataHandler dh);

スタブを使用して、添付ファイルを Web Services Invocation Framework (WSIF) に渡すこともできます。

DataHandler dh = new DataHandler(new FileDataSource("myimage.jpg"));
WSIFServiceFactory factory = WSIFServiceFactory.newInstance();
WSIFService service = factory.getService("my.wsdl",null,null,"http://mynamespace","abc");
MyInterface stub = (MyInterface)service.getStub(MyInterface.class);
stub.MyOperation(dh);

オペレーションから添付ファイルを戻すこともできますが、戻りパラメーターとして戻すことができるのは 1 つの添付ファイルのみです。




関連資料
例: SOAP 添付ファイルの WSDL 拡張を作成する
添付ファイル付き SOAP メッセージ - 型および型マッピングの使用
WSIF を使用した添付ファイル付き SOAP メッセージの引き渡し
参照トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 9:12:22 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.zseries.doc/info/zseries/ae/rwsf_attach_pass.html