java.lang.Object javax.xml.bind.attachment.AttachmentUnmarshaller
public abstract class AttachmentUnmarshaller
启用包含优化的二进制数据格式的根文档的 JAXB 解组。
此 API 支持 JAXB 2.0 实现与基于 MIME 的包处理器(MTOM/XOP 和 WS-I AP 1.0)之间的协作,有效地处理优化的二进制数据格式。JAXB 解组包的正文,把理解将使用的打包格式这项任务委托给实现此抽象类的基于 MIME 的包处理器。
此抽象类标识包是否需要 XOP 处理(isXOPPackage()
),并提供对使用内容 id 存储为附件的二进制内容的检索。
getAttachment*(String cid)
的内容 id(即 cid)。ref:swaRef
的属性。
Unmarshaller.setAttachmentUnmarshaller(AttachmentUnmarshaller)
,
XML-binary Optimized Packaging,
WS-I Attachments Profile Version 1.0.,
Describing Media Content of Binary Data in XML
构造方法摘要 | |
---|---|
AttachmentUnmarshaller() |
方法摘要 | |
---|---|
abstract byte[] |
getAttachmentAsByteArray(String cid) 以 byte[] 形式检索由内容 id(即 cid )标识的附件。 |
abstract DataHandler |
getAttachmentAsDataHandler(String cid) 通过内容 id(即 cid )查找 MIME 内容,并作为 DataHandler 返回。 |
boolean |
isXOPPackage() 只读属性,如果 JAXB 解组程序需要执行 XOP 处理,则返回 true。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public AttachmentUnmarshaller()
方法详细信息 |
---|
public abstract DataHandler getAttachmentAsDataHandler(String cid)
通过内容 id(即 cid
)查找 MIME 内容,并作为 DataHandler
返回。
返回的 DataHandler
实例必须配置为满足以下必需的映射关系约束条件。
MIME 和 Java 类型之间的必需的映射关系 | |
---|---|
MIME 类型 | Java 类型 |
DataHandler.getContentType() |
instanceof DataHandler.getContent() |
image/gif | java.awt.Image |
image/jpeg | java.awt.Image |
text/xml or application/xml | javax.xml.transform.Source |
cid
- 需要它是 XML 模式
xs:anyURI
数据类型的有效词法形式。如果
isXOPPackage()
==true
,则对于每个
cid:
URI 模式,它都必须是有效的 URI(参见
RFC 2387)。
DataHandler
。
IllegalArgumentException
- 如果未找到给定 cid 的附件。
public abstract byte[] getAttachmentAsByteArray(String cid)
以 byte[] 形式检索由内容 id(即 cid
)标识的附件。
cid
- 需要它是 XML 模式
xs:anyURI
数据类型的有效词法形式。如果
isXOPPackage()
==true
,则对于每个
cid:
URI 模式,它都必须是有效的 URI(参见
RFC 2387)。
IllegalArgumentException
- 如果未找到给定 cid 的附件。
public boolean isXOPPackage()
只读属性,如果 JAXB 解组程序需要执行 XOP 处理,则返回 true。
当满足 Identifying XOP Documents 中指定的约束条件时,此方法返回 true
。解组过程中此值不得更改。