Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第4部 Webサービス編> 第18章 Webサービスの開発> 18.3 Javaのデータ型とXMLのデータ型との対応

18.3.4 添付ファイル型

 添付ファイル型は、実際の通信においてXMLへ変換されず、SOAPメッセージの添付ファイルとしてそのままのデータで送受信されるデータ型です。
 通常のデータ型と同様に、Webサービスアプリケーションのパラメタ(引数、返り値)、Bean型・構造体型のメンバなどに利用できます。

 添付ファイル型に使用するクラスと、それに対応してXMLで使用される型を以下に示します。

Webサービスアプリケーションのパラメタに使用するJavaのデータ型

XMLで使用されるデータ型

javax.activation.DataHandler

wsibp:swaRef
(またはMIMEバインディングのpart要素に任意のMIME型としてマップ)

 javax.activation.DataHandlerは、JAF(Java Activation Framework)で提供されるクラスです。MIMEの各種情報およびデータ内容を保持します。本クラスの詳細については、JavaDocを参照してください。

■そのほかの添付ファイルのデータ型

 下記のJavaクラスも添付ファイルを表すデータ型として利用することができます。ただし、これらのJavaクラスを使用する場合、バイト列とJavaオブジェクトへの変換が行われるなど、オリジナルのバイト列データが正確に保持されない場合があります。また、これらのクラスを使用したサービスエンドポイントインタフェースからは作成するWSDLはWS-I Attachments Profileに準拠できない場合があります。

Webサービスアプリケーションのパラメタに使用するJavaのデータ型

XMLで使用されるデータ型

java.awt.Image

apachesoap:Image
(またはMIMEバインディングのpart要素MIME型image/jpegとしてマップ)

javax.mail.internet.MimeMultipart

apachesoap:MimeMultipart
(またはMIMEバインディングのpart要素にMIME型multipart/*としてマップ)

javax.xml.transform.Source (注)

apachesoap:Source
(またはMIMEバインディングのpart要素にMIME型text/xmlとしてマップ)

注) javax.xml.transform.Sourceインタフェースの実装クラスには、javax.xml.transform.source.StreamSourceクラスを使用してください。それ以外のクラスのオブジェクトはサポートされません。

mime:contentからJavaクラスへのマッピング

 WSDL中のmime:content要素で添付ファイルが指定されている場合、次の表に示すようにJavaクラスにマップされます。

mime:content要素のtype属性

Javaクラス

image/jpeg

java.awt.Image

text/plain

java.lang.String

multipart/*

javax.mail.internet.MimeMultipart

text/xml

javax.xml.transform.Source

application/xml

javax.xml.transform.Source

上記以外のMIME型 (注)

javax.activation.DataHandler

注) image/gif型は未サポートです。

 mime:content要素が使用された場合、mime:content要素のpart属性から参照されたwsdl:part要素のtype及びelement属性は、生成されるサービスエンドポイントインタフェースにマップされません。替わりに上記のJavaクラスが使用されます。

 なお、MIMEバインディングのpart要素が上記に記載されたMIME型以外の場合は、Webサービスアプリケーションのパラメタとしてjavax.activation.DataHandlerが使用されます。ただし、MIME型image/gifは利用できません。

 一定以上のサイズの添付ファイルを受信する際、メモリ節約のため、内部的に一時ファイルが作成されます。また、添付ファイルに関するAPIを使用した場合も、一時ファイルが作成される場合があります。
 一時ファイルの生成に関するチューニングは、Webサービス設定ファイルで行います。
 詳細については、“Webサービスの運用”の“Webサービス設定ファイル”を参照してください。


目次 索引 前ページ次ページ

Copyright 2008 FUJITSU LIMITED