|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.xml.soap.AttachmentPart
public abstract class AttachmentPart
SOAPMessage
객체에의 개개의 첨부입니다. SOAPMessage
객체에는 1 개 이상의 AttachmentPart
객체를 추가할 수 있습니다 (추가하지 않는 것도 가능). 각 AttachmentPart
객체는, 어플리케이션 고유의 컨텐츠와 거기에 관련하는 MIME 헤더의 2 개로 구성되어 있습니다. MIME 헤더는, 컨텐츠의 식별과 설명에 사용하는 이름과 값의 페어로 구성되어 있습니다.
AttachmentPart
객체는 다음의 규격과 조건을 채우고 있을 필요가 있습니다.
Content-Type
AttachmentPart
객체의 데이터의 형태를 지정. [RFC2045] 에 준거할 필요가 있습니다. Content-Type 헤더의 예를 다음에 나타냅니다.
Content-Type:application/xml다음의 코드 (
ap
는 AttachmentPart
객체)로 상기의 예의 헤더를 설정합니다.
ap.setMimeHeader("Content-Type", "application/xml");
AttachmentPart
객체의 컨텐츠에 관해서는 제한이 없습니다. 단순한 텍스트 객체로부터 복잡한 XML 문서나 이미지 파일까지 컨텐츠로 할 수 있습니다.
AttachmentPart
객체는 SOAPMessage.createAttachmentPart
메소드로 작성됩니다. MIME 헤더 설정 후,SOAPMessage.addAttachmentPart
로 작성된 AttachmentPart
객체는 메세지에 추가됩니다.
다음의 코드의 발췌 (m
는 SOAPMessage
객체,contentStringl
는 String
객체)는,AttachmentPart
객체의 인스턴스의 작성, 컨텐츠와 헤더 정보에 의한 AttachmentPart
객체의 설정,SOAPMessage
객체에의 AttachmentPart
객체의 추가를 실행하는 방법을 나타내고 있습니다.
AttachmentPart ap1 = m.createAttachmentPart(); ap1.setContent(contentString1, "text/plain"); m.addAttachmentPart(ap1);
다음의 코드의 발췌는, 동메세지에 2 번째의 AttachmentPart
인스턴스를 작성, 추가하는 방법을 나타내고 있습니다. jpegData
는, JPEG 파일을 의미하는 바이너리의 byte 버퍼입니다.
AttachmentPart ap2 = m.createAttachmentPart(); byte[] jpegData = ...; ap2.setContent(new ByteArrayInputStream(jpegData), "image/jpeg"); m.addAttachmentPart(ap2);
getContent
메소드는,AttachmentPart
객체로부터 컨텐츠와 헤더를 가져옵니다. DataContentHandler
객체가 존재하고 있을까 하고 있지 않는 것처럼보다 , 반환되는 Object
가 MIME 타입에 대응한 Java 객체인가, 바이트의 컨텐츠를 포함한 InputStream
객체인가로 나누어집니다.
String content1 = ap1.getContent(); java.io.InputStream content2 = ap2.getContent();메소드
clearContent
를 사용하면(자) AttachmentPart
객체의 모든 컨텐츠가 삭제됩니다. 헤더 정보에 영향은 없습니다.
ap1.clearContent();
생성자 의 개요 | |
---|---|
AttachmentPart ()
|
메소드의 개요 | |
---|---|
abstract void |
addMimeHeader (String name,
String value)
지정의 이름과 값을 가지는 MIME 헤더를 AttachmentPart 객체에 추가합니다. |
abstract void |
clearContent ()
이 AttachmentPart 객체의 컨텐츠를 클리어 합니다. |
abstract Iterator |
getAllMimeHeaders ()
이 AttachmentPart 객체의 모든 헤더를 MimeHeader 객체의 반복자로서 가져옵니다. |
abstract InputStream |
getBase64Content ()
AttachmentPart 의 컨텐츠를 Base64 로 encode 된 문자 데이터로서 취득할 수 있는 InputStream 를 돌려줍니다. |
abstract Object |
getContent ()
이 AttachmentPart 객체의 컨텐츠를 Java 객체로서 가져옵니다. |
String |
getContentId ()
이름이 "Content-ID" 의 MIME 헤더의 값을 가져옵니다. |
String |
getContentLocation ()
이름이 "Content-Location" 의 MIME 헤더의 값을 가져옵니다. |
String |
getContentType ()
이름이 "Content-Type" 의 MIME 헤더의 값을 가져옵니다. |
abstract DataHandler |
getDataHandler ()
이 AttachmentPart 객체의 DataHandler 객체를 가져옵니다. |
abstract Iterator |
getMatchingMimeHeaders (String [] names)
지정의 배열의 이름에 일치하는 MimeHeader 객체를 모두 가져옵니다. |
abstract String [] |
getMimeHeader (String name)
지정의 String 로 식별된 헤더의 값을 모두 가져옵니다. |
abstract Iterator |
getNonMatchingMimeHeaders (String [] names)
지정의 배열의 이름에 일치하지 않는 MimeHeader 객체를 모두 가져옵니다. |
abstract InputStream |
getRawContent ()
GetContent 에의 호출이 실행된 위에 DataContentHandler 가 이 AttachmentPart 의 content-type 에 등록되지 않았던 것이라고 봐, 이 AttachmentPart 객체의 컨텐츠를 InputStream 로서 가져옵니다. |
abstract byte[] |
getRawContentBytes ()
GetContent 에의 호출이 실행된 위에 DataContentHandler 가 이 AttachmentPart 의 content-type 에 등록되지 않았던 것이라고 봐, 이 AttachmentPart 객체의 컨텐츠를 byte[] 배열로서 가져옵니다. |
abstract int |
getSize ()
이 AttachmentPart 객체의 바이트수를 돌려줍니다. |
abstract void |
removeAllMimeHeaders ()
MIME 헤더의 엔트리를 모두 삭제합니다. |
abstract void |
removeMimeHeader (String header)
지정의 이름에 일치하는 모든 MIME 헤더를 삭제합니다. |
abstract void |
setBase64Content (InputStream content,
String contentType)
Base64 의 소스 InputStream 로부터 이 첨부 부분의 컨텐츠를 설정해,Content-Type 헤더의 값을 contentType 에 포함되는 값으로 합니다. |
abstract void |
setContent (Object object,
String contentType)
이 첨부 부분의 컨텐츠를 지정의 Object 의 컨텐츠로 설정해,Content-Type 헤더의 값을 지정의 타입으로 합니다. |
void |
setContentId (String contentId)
이름이 "Content-ID" 의 MIME 헤더를 지정의 값으로 설정합니다. |
void |
setContentLocation (String contentLocation)
이름이 "Content-Location" 의 MIME 헤더를 지정의 값으로 설정합니다. |
void |
setContentType (String contentType)
이름이 "Content-Type" 의 MIME 헤더를 지정의 값으로 설정합니다. |
abstract void |
setDataHandler (DataHandler dataHandler)
지정의 DataHandler 객체를 AttachmentPart 객체의 데이터 핸들러로서 설정합니다. |
abstract void |
setMimeHeader (String name,
String value)
지정의 이름에 일치하는, 최초의 헤더 엔트리를 지정의 값으로 변경합니다. |
abstract void |
setRawContent (InputStream content,
String contentType)
이 첨부 부분의 컨텐츠를 InputStream content 에 포함되는 것으로서 설정해,Content-Type 헤더의 값을 contentType 에 포함되는 값으로 합니다. |
abstract void |
setRawContentBytes (byte[] content,
int offset,
int len,
String contentType)
이 첨부 부분의 컨텐츠를 byte[] 배열의 content 에 포함되는 것으로서 설정해,Content-Type 헤더의 값을 contentType 에 포함되는 값으로 합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
public AttachmentPart()
메소드의 상세 |
---|
public abstract int getSize() throws SOAPException
AttachmentPart
객체의 바이트수를 돌려줍니다.
AttachmentPart
객체의 사이즈 (바이트수),
또는 -1 (사이즈를 결정할 수 없는 경우)
SOAPException
- 이 첨부의 컨텐츠가
파손하고 있는 경우, 또는 사이즈를 결정중에
예외가 발생했을 경우public abstract void clearContent()
AttachmentPart
객체의 컨텐츠를 클리어 합니다. MIME 헤더 부분은 그대로 남습니다.
public abstract Object getContent() throws SOAPException
AttachmentPart
객체의 컨텐츠를 Java 객체로서 가져옵니다. 반환된 Java 객체의 형태는, 바이트의 해석에 사용하는 (1) DataContentHandler
객체와 헤더로 지정되고 있는 (2) Content-Type
에 따라서 다릅니다.
MIME 컨텐츠 타입이 "text/plain","text/html","text/xml" 의 경우,DataContentHandler
객체는 MIME 타입에 대응하는 Java 타입과의 변환을 실행합니다. 다른 MIME 타입의 경우,DataContentHandler
객체는, raw 바이트의 컨텐츠 데이터를 포함한 InputStream
객체를 돌려줍니다.
SAAJ 에 준거한 구현에서는 적어도,text/plain
의 Content-Type
의 값을 가지는 컨텐츠 스트림에 대응한 java.lang.String
객체,text/xml
의 Content-Type
의 값을 가지는 컨텐츠 스트림에 대응한 javax.xml.transform.stream.StreamSource
객체,image/gif
또는 image/jpeg
의 Content-Type
의 값을 가지는 컨텐츠 스트림에 대응한 java.awt.Image
객체를 돌려줄 필요가 있습니다. 인스톨 한 DataContentHandler
객체를 해석할 수 없는 컨텐츠 타입의 경우,DataContentHandler
객체는 raw 바이트로 java.io.InputStream
객체를 돌려줄 필요가 있습니다.
AttachmentPart
객체의 컨텐츠를 가지는 Java
객체
SOAPException
- 이
AttachmentPart
객체에 컨텐츠가 설정되어 있지 않은 경우,
또는 데이터 변환 에러가 발생했을 경우public abstract InputStream getRawContent() throws SOAPException
GetContent
에의 호출이 실행된 위에 DataContentHandler
가 이 AttachmentPart
의 content-type
에 등록되지 않았던 것이라고 봐, 이 AttachmentPart
객체의 컨텐츠를 InputStream 로서 가져옵니다.
반환된 InputStream 로부터 읽어들이면(자), 스트림의 데이터가 소비될테니 주의해 주세요. 호출측은 다음의 API 를 호출하기 전에, InputStream 를 적절히 리셋 할 필요가 있습니다. 생의 첨부 컨텐츠의 카피가 필요한 경우,getRawContentBytes()
API 를 대신에 사용합니다.
InputStream
생의 데이터는 AttachmentPart
에 포함되어 있다
SOAPException
- 이
AttachmentPart
객체에 컨텐츠가 설정되어 있지 않은 경우,
또는 데이터 변환 에러가 발생했을 경우getRawContentBytes()
public abstract byte[] getRawContentBytes() throws SOAPException
GetContent
에의 호출이 실행된 위에 DataContentHandler
가 이 AttachmentPart
의 content-type
에 등록되지 않았던 것이라고 봐, 이 AttachmentPart
객체의 컨텐츠를 byte[] 배열로서 가져옵니다.
byte[]
배열
SOAPException
- 이
AttachmentPart
객체에 컨텐츠가 설정되어 있지 않은 경우,
또는 데이터 변환 에러가 발생했을 경우public abstract InputStream getBase64Content() throws SOAPException
AttachmentPart
의 컨텐츠를 Base64 로 encode 된 문자 데이터로서 취득할 수 있는 InputStream
를 돌려줍니다. 이 메소드를 사용하면(자), 첨부의 raw 바이트가 Base64 로 encode 되어 돌아갑니다.
AttachmentPart
의
InputStream
SOAPException
- 이
AttachmentPart
객체에 컨텐츠가 설정되어 있지 않은 경우,
또는 데이터 변환 에러가 발생했을 경우public abstract void setContent(Object object, String contentType)
Object
의 컨텐츠로 설정해,Content-Type
헤더의 값을 지정의 타입으로 합니다. Object
의 형태는 Content-Type
로 지정된 값에 대응시킬 필요가 있습니다. 이것은, 사용중의 DataContentHandler
객체의 특정세트에 따라서 다릅니다.
object
- 이 첨부 부분의 컨텐츠를
구성하는 Java 객체contentType
- 컨텐츠 타입을 지정한다
MIME 의 캐릭터 라인
IllegalArgumentException
- contentType 가 컨텐츠 객체의 타입과 일치하지 않는 경우,
또는 이 컨텐츠 객체에
DataContentHandler
객체가 없는 경우에
throw 되는getContent()
public abstract void setRawContent(InputStream content, String contentType) throws SOAPException
InputStream
content
에 포함되는 것으로서 설정해,Content-Type
헤더의 값을 contentType
에 포함되는 값으로 합니다. 이후의 getSize()의 호출은 정확한 컨텐츠 사이즈가 아닌 경우가 있습니다.
content
- 첨부 부분에 추가하는 raw 데이터contentType
- Content-Type
헤더에
설정하는 값
SOAPException
- 컨텐츠의 설정으로 에러가 발생했을 경우
NullPointerException
- content
가 null 의 경우public abstract void setRawContentBytes(byte[] content, int offset, int len, String contentType) throws SOAPException
byte[]
배열의 content
에 포함되는 것으로서 설정해,Content-Type
헤더의 값을 contentType
에 포함되는 값으로 합니다.
content
- 첨부 부분에 추가하는 raw 데이터contentType
- Content-Type
헤더에
설정하는 값offset
- 컨텐츠의 바이트 배열내의 오프셋(offset)len
- 컨텐츠를 형성하는 바이트수
SOAPException
- 컨텐츠의 설정으로 에러가 발생했을 경우
또는 content 가 null 의 경우public abstract void setBase64Content(InputStream content, String contentType) throws SOAPException
InputStream
로부터 이 첨부 부분의 컨텐츠를 설정해,Content-Type
헤더의 값을 contentType
에 포함되는 값으로 합니다. 이 메소드에 의해, Base64 의 입력 내용은 최초로 복호화 되어 최종적으로 raw 바이트가 첨부 부분에 기입해집니다. 이후의 getSize()의 호출은 정확한 컨텐츠 사이즈가 아닌 경우가 있습니다.
content
- 첨부 부분에 추가하는 Base64 로 encode 된 데이터contentType
- Content-Type
헤더에
설정하는 값
SOAPException
- 컨텐츠의 설정으로 에러가 발생했을 경우
NullPointerException
- content
가 null 의 경우public abstract DataHandler getDataHandler() throws SOAPException
AttachmentPart
객체의 DataHandler
객체를 가져옵니다.
AttachmentPart
객체에 관련한 DataHandler
객체
SOAPException
- 이
AttachmentPart
객체에 데이터가 없는 경우public abstract void setDataHandler(DataHandler dataHandler)
DataHandler
객체를 AttachmentPart
객체의 데이터 핸들러로서 설정합니다. 일반적으로, 착신 메세지에는, 데이터 핸들러가 자동적으로 설정됩니다. 메세지의 작성중이나 컨텐츠에 의한 메세지의 생성중에 setDataHandler
메소드를 사용해, 다양한 데이터 소스의 데이터를 메세지에 짜넣을 수가 있습니다.
dataHandler
- 설정하는 DataHandler
객체
IllegalArgumentException
- 지정의
DataHandler
객체에 문제가 발생했을 경우public String getContentId()
String
,
또는 아무것도 없는 경우
null
setContentId(java.lang.String)
public String getContentLocation()
String
,
또는 아무것도 없는 경우
null
public String getContentType()
String
,
또는 아무것도 없는 경우
null
public void setContentId(String contentId)
contentId
- "Content-ID" 헤더의 값을 제공한다
String
IllegalArgumentException
- 지정의
contentId
치에 문제가 발생했을 경우getContentId()
public void setContentLocation(String contentLocation)
contentLocation
- "Content-Location" 헤더의 값을 제공한다
String
IllegalArgumentException
- 지정의
컨텐츠의 장소에 문제가 발생했을 경우public void setContentType(String contentType)
contentType
- "Content-Type" 헤더의 값을 제공한다
String
IllegalArgumentException
- 지정의
컨텐츠 타입에 문제가 발생했을 경우public abstract void removeMimeHeader(String header)
header
- 삭제하는 MIME 헤더명
의 캐릭터 라인public abstract void removeAllMimeHeaders()
public abstract String [] getMimeHeader(String name)
String
로 식별된 헤더의 값을 모두 가져옵니다.
name
- 헤더명 (예: "Content-Type")
String
배열setMimeHeader(java.lang.String, java.lang.String)
public abstract void setMimeHeader(String name, String value)
RFC822 헤더는 US-ASCII 문자만을 포함하는 것이 가능한 점에 주의해 주세요.
name
- 검색하는 헤더명을 제공한다
String
value
- 지정의 이름과 일치하는 헤더에, 설정한 값을
제공하는 String
IllegalArgumentException
- 지정의
MIME 헤더명이나 값에 문제가 발생했을 경우public abstract void addMimeHeader(String name, String value)
AttachmentPart
객체에 추가합니다. RFC822 헤더는 US-ASCII 문자만을 포함하는 것이 가능한 점에 주의해 주세요.
name
- 추가하는 헤더명을 제공한다
String
value
- 추가하는 헤더치를 제공한다
String
IllegalArgumentException
- 지정의
MIME 헤더명이나 값에 문제가 발생했을 경우public abstract Iterator getAllMimeHeaders()
AttachmentPart
객체의 모든 헤더를 MimeHeader
객체의 반복자로서 가져옵니다.
AttachmentPart
객체에 대한다
모든 MIME 헤더를 가지는 Iterator
객체public abstract Iterator getMatchingMimeHeaders(String [] names)
MimeHeader
객체를 모두 가져옵니다.
names
- 반환되는 MIME 헤더명을 가지는 String
배열
Iterator
객체
public abstract Iterator getNonMatchingMimeHeaders(String [] names)
MimeHeader
객체를 모두 가져옵니다.
names
- 돌려주어지지 않은 MIME 헤더명을 가지는 String
배열
이 AttachmentPart
객체의
모든 MIME 헤더. 일치하지 않는 MIME 헤더는
Iterator
객체로서 돌아간다
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.