|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.xml.bind.attachment.AttachmentMarshaller
public abstract class AttachmentMarshaller
JAXB 整列化プロセスがバイナリデータのストレージを最適化できるようにします。
この API は、JAXB 整列化プロセスと MIME ベースパッケージプロセッサ間における、最適化されたバイナリデータ形式の効率的かつ協調的な作成を可能にします。JAXB 実装は MIME ベースパッケージのルート本体を整列化し、参照可能な MIME パートの作成をこの抽象化オブジェクトを実装する MIME ベースパッケージプロセッサに委任します。
isXOPPackage()
が true の場合、XOP 処理は有効になります。詳細は、addMtomAttachment(DataHandler, String, String)
を参照してください。
WS-I Attachment Profile 1.0 は、{http://ws-i.org/profiles/basic/1.1/xsd}swaRef に関係する各 JAXB プロパティーに対する marshaller によって呼び出される addSwaRefAttachment(DataHandler)
によってサポートされています。
Marshaller.setAttachmentMarshaller(AttachmentMarshaller)
,
XML-binary Optimized Packaging,
WS-I Attachments Profile Version 1.0.コンストラクタの概要 | |
---|---|
AttachmentMarshaller()
|
メソッドの概要 | |
---|---|
abstract String |
addMtomAttachment(byte[] data,
int offset,
int length,
String mimeType,
String elementNamespace,
String elementLocalName)
バイナリ data を、添付として最適化されたバイナリストレージにすることを考慮します。 |
abstract String |
addMtomAttachment(DataHandler data,
String elementNamespace,
String elementLocalName)
MIME コンテンツ data を、添付として最適化されたバイナリストレージにすることを考慮します。 |
abstract String |
addSwaRefAttachment(DataHandler data)
添付として MIME data を追加し、添付のコンテンツ ID、cid を返します。 |
boolean |
isXOPPackage()
JAXB marshaller が XOP 作成を有効にすべき場合、true を返す読み取り専用プロパティー。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public AttachmentMarshaller()
メソッドの詳細 |
---|
public abstract String addMtomAttachment(DataHandler data, String elementNamespace, String elementLocalName)
MIME コンテンツ data
を、添付として最適化されたバイナリストレージにすることを考慮します。
isXOPPackage()
が true
の場合、「Creating XOP Packages」のステップ 3 に記載されているとおり、データ型が「base64Binary」である各要素に対し、JAXB 整列化プロセスによってこのメソッドは呼び出されます。
このメソッドの実装者は、data
を独立に添付するか、base64Binary データ形式のインラインにするかを決定します。実装が MIME パートとしてバイナリデータのストレージを最適化することを選択した場合、data
を MIME ベースパッケージに添付した後、MIME メッセージ内の MIME パートを識別する一意のコンテンツ ID、cid を割り当てることが必要です。このメソッドは cid を返します。これにより、JAXB marshaller は、バイナリデータを整列化する代わりに、その cid を参照する XOP 要素を整列化できます。メソッドが null を返す場合、JAXB marshaller は base64binary データとして data
をインラインにします。
このメソッドの呼び出し側は、次の制約を満たす必要があります。data
を含む要素情報セット項目に xmime:contentType
属性がある場合、または、data
を表現する JAXB プロパティーまたはフィールドが既知の MIME 型で注釈されている場合、data.getContentType()
がその MIME 型に設定される必要があります。
elementNamespace
および elementLocalName
パラメータは、バイナリデータを含むコンテキストを提供します。この情報は、バイナリデータをインラインにするか、添付として最適化するかを決定するために、MIME ベースパッケージプロセッサによって使用される場合があります。
data
- 添付するデータを表現する。null 以外elementNamespace
- base64Binary データを包含する要素の名前空間 URI。null は不可、空は可elementLocalName
- 要素のローカル名。常に null 以外の有効な文字列
data
を含む添付を識別する有効なコンテンツ ID URI (RFC 2387を参照)。それ以外の場合、添付が追加されておらず、代わりにメッセージ内にインライン化するべきなら、nullpublic abstract String addMtomAttachment(byte[] data, int offset, int length, String mimeType, String elementNamespace, String elementLocalName)
バイナリ data
を、添付として最適化されたバイナリストレージにすることを考慮します。
コンテンツ型が不明であるため、添付の MIME コンテンツ型を「application/octet-stream」に設定する必要があります。
elementNamespace
および elementLocalName
パラメータは、バイナリデータを含むコンテキストを提供します。この情報は、バイナリデータをインラインにするか、添付として最適化するかを決定するために、MIME ベースパッケージプロセッサによって使用される場合があります。
data
- 添付するデータを表現する。null 以外。実際のデータ領域は (data,offset,length) タプルによって指定されるoffset
- 最初のバイトの読み込み先となる配列内のオフセット。array.length 以下の負でない値にする必要があるlength
- 指定された配列から読み込むバイト数。array.length 以下の負でない値にする必要があるmimeType
- データに JAXB が認識している MIME 型が関連付けられている場合、それがこのパラメータとして渡される。認識している MIME 型がない場合、「application/octet-stream」。このパラメータは null は不可elementNamespace
- base64Binary データを包含する要素の名前空間 URI。null は不可、空は可elementLocalName
- 要素のローカル名。常に null 以外の有効な文字列
data
を含む添付に対するコンテンツ ID URI、cid。データをインライン化するべき場合は nulladdMtomAttachment(DataHandler, String, String)
public boolean isXOPPackage()
JAXB marshaller が XOP 作成を有効にすべき場合、true を返す読み取り専用プロパティー。
整列化プロセス中に、この値を変更しないでください。この値が true の場合、整列化プロセスで適切なバイナリデータ型が現れたとき、addMtomAttachment(...)
メソッドが呼び出されます。
この値が true
であり、整列化された XML コンテンツが「Creating XOP Pacakges」のステップ 1 に違反した場合 、Marshaller.marshal() は IllegalStateException をスローします (http://www.w3.org/TR/2005/REC-xop10-20050125/#creating_xop_packages)。「Ensure the Original XML Infoset contains no element information item with a [namespace name] of "http://www.w3.org/2004/08/xop/include" and a [local name] of Include (元の XML 情報セットに、[namespace name] が「http://www.w3.org/2004/08/xop/include」で、[local name] が Include である要素情報項目が含まれないようにすること)」
このメソッドが true を返し、整列化プロセス中、最低 1 回の addMtomAttachment(...)
呼び出しがコンテンツ ID を返した場合、MIME ベースパッケージプロセッサは、「Creating XOP Pacakges」のステップ 5 に記載されているとおり、application/xop+xml メディアタイプをルート部分にラベル付けする必要があります。
public abstract String addSwaRefAttachment(DataHandler data)
添付として MIME data
を追加し、添付のコンテンツ ID、cid を返します。
このメソッドは、{http://ws-i.org/profiles/basic/1.1/xsd}swaRef 型であるそれぞれの要素/属性に対する JAXB 整列化プロセスによって呼び出されます。このメソッドを実装する MIME ベースパッケージプロセッサは、指定されたデータを MIME 添付に添付し、MIME ベースパッケージ内でその添付を一意に識別するコンテンツ ID、cid を生成します。
呼び出し側は、返されたコンテンツ ID、cid を、整列化された XML コンテンツに挿入します。
data
- 添付するデータを表現する。null 以外
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。