JavaTM Platform
Standard Ed. 6

javax.xml.bind.attachment
클래스 AttachmentMarshaller

java.lang.Object 
  상위를 확장 javax.xml.bind.attachment.AttachmentMarshaller


public abstract class AttachmentMarshaller
extends Object

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) 에 의해 지원되고 있습니다.

도입된 버젼:
JAXB 2.0
관련 항목:
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
 

생성자 의 상세

AttachmentMarshaller

public AttachmentMarshaller()
메소드의 상세

addMtomAttachment

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 형으로 설정될 필요가 있습니다.

elementNamespaceelementLocalName 파라미터는, 바이너리 데이터를 포함한 문맥을 제공합니다. 이 정보는, 바이너리 데이터를 인 라인으로 하는지, 첨부로서 최적화할까를 결정하기 위해서(때문에), MIME 베이스 패키지 프로세서에 의해 사용되는 경우가 있습니다.

파라미터:
data - 첨부하는 데이터를 표현한다. null 이외
elementNamespace - base64Binary 데이터를 포함 하는 요소의 이름 공간 URI. null 는 불가, 빈 상태(empty)은 가능
elementLocalName - 요소의 로컬명. 항상 null 이외의 유효한 캐릭터 라인
반환값:
data 를 포함한 첨부를 식별하는 유효한 컨텐츠 ID URI (RFC 2387 을 참조). 그 이외의 경우, 첨부가 추가되지 않고, 대신에 메세지내에 인 라인화해야 하는 것이라면, null
관련 항목:
XML-binary Optimized Packaging , Describing Media Content of Binary Data in XML

addMtomAttachment

public abstract String  addMtomAttachment(byte[] data,
                                         int offset,
                                         int length,
                                         String  mimeType,
                                         String  elementNamespace,
                                         String  elementLocalName)

바이너리 data 를, 첨부로서 최적화된 바이너리 스토리지로 하는 것을 고려합니다.

컨텐츠형이 불명하기 때문에, 첨부의 MIME 컨텐츠형을 「application/octet-stream」로 설정할 필요가 있습니다.

elementNamespaceelementLocalName 파라미터는, 바이너리 데이터를 포함한 문맥을 제공합니다. 이 정보는, 바이너리 데이터를 인 라인으로 하는지, 첨부로서 최적화할까를 결정하기 위해서(때문에), MIME 베이스 패키지 프로세서에 의해 사용되는 경우가 있습니다.

파라미터:
data - 첨부하는 데이터를 표현한다. null 이외. 실제의 데이터 영역은, (data, offset, length) 타풀에 의해 지정되는
offset - 읽어들이는 최초의 바이트의 배열내의 오프셋(offset). 부가 아니고, array.length 이하
length - 주어진 배열로부터 읽어들이는 바이트수. 부가 아니고, array.length 이하
mimeType - 데이터에 JAXB 가 기존의 MIME 형을 관련지을 수 있고 있는 경우, 그것이 이것의 파라미터로서 건네받는다. 불명한 경우, 「application/octet-stream」. 이 파라미터는 null 는 불가
elementNamespace - base64Binary 데이터를 포함 하는 요소의 이름 공간 URI. null 는 불가, 빈 상태(empty)은 가능
elementLocalName - 요소의 로컬명. 항상 null 이외의 유효한 캐릭터 라인
반환값:
data 를 포함한 첨부에 대한, 컨텐츠 ID URI, cid. 또는, 데이터를 인 라인에 해야 한다고 와, null
관련 항목:
addMtomAttachment(DataHandler, String, String)

isXOPPackage

public boolean isXOPPackage()

JAXB marshaller 가 XOP 작성을 유효하게 해야 할 경우, true 를 돌려주는 읽기 전용 프로퍼티.

정렬화 프로세스중에, 이 값을 변경하지 말아 주세요. 이 값이 true 의 경우, 정렬화 프로세스로 적절한 바이너리 데이터형이 나타났을 때,addMtomAttachment(...) 메소드가 불려 갑니다.

이 값이 true 이며, 정렬화 된 XML 컨텐츠가 「Creating XOP Pacakges 」의 스텝 1 에 위반했을 경우 , Marshaller.marshal()는 IllegalStateException 를 throw 합니다 (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 미디어 타입을 루트 부분에 라벨 붙이고 할 필요가 있습니다.

반환값:
MIME 문맥이 XOP 패키지의 경우, true

addSwaRefAttachment

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 이외
반환값:
cid 로서 사용되는 유효한 URI. WS-I Attachments Profile Version 1.0 의 준거 요건 R2928 를 채우는 것

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.