JavaTM Platform
Standard Ed. 6

javax.xml.soap
클래스 MessageFactory

java.lang.Object 
  상위를 확장 javax.xml.soap.MessageFactory


public abstract class MessageFactory
extends Object

SOAPMessage 객체를 작성하는 팩토리입니다.  

SAAJ 클라이언트는,newInstance 메소드를 사용해 MessageFactory 객체를 작성할 수 있습니다. 이 코드의 예를 다음에 나타냅니다.

       MessageFactory mf = MessageFactory.newInstance();
       MessageFactory mf12 = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL);
 

그 작성 방법으로 관계없이, 모든 MessageFactory 객체는, 디폴트로 다음의 요소를 가지는 SOAPMessage 객체를 생성합니다.

경우에 따라서는,SOAPHeader 객체나 SOAPBody 객체에, 추가의 엔트리로 미리 작성된 메세지를 생성하는 특수한 MessageFactory 객체가 포함되어 있는 일이 있습니다. 새로운 SOAPMessage 객체의 컨텐츠는, 작성시에 다음의 2 개의 MessageFactory 메소드중 어느 쪽이 사용될까에 따라서 다릅니다.


생성자 의 개요
MessageFactory ()
           
 
메소드의 개요
abstract  SOAPMessage createMessage ()
          디폴트의SOAPPart,SOAPEnvelope,SOAPBody, 및SOAPHeader 객체를 사용해,SOAPMessage 객체를 새롭게 작성합니다.
abstract  SOAPMessage createMessage (MimeHeaders  headers, InputStream  in)
          지정의 InputStream 객체의 컨텐츠를 새로운 SOAPMessage 객체에 내부화해, 그 SOAPMessage 객체를 돌려줍니다.
static MessageFactory newInstance ()
          새로운 MessageFactory 객체를 작성해, 디폴트의 구현 인스턴스로 합니다 (SOAP 1.1).
static MessageFactory newInstance (String  protocol)
          새로운 MessageFactory 객체를 작성해, 지정의 구현 인스턴스로 합니다(동적인 메세지 팩토리, SOAP 1.1 메세지 팩토리, 또는 SOAP 1.2 메세지 팩토리).
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

MessageFactory

public MessageFactory()
메소드의 상세

newInstance

public static MessageFactory  newInstance()
                                  throws SOAPException 
새로운 MessageFactory 객체를 작성해, 디폴트의 구현 인스턴스로 합니다 (SOAP 1.1). 이 메소드는 다음의 순서의 검색 순서로, 로드하는 MessageFactory 구현 클래스를 결정합니다.

반환값:
MessageFactory 의 새로운 인스턴스
예외:
SOAPException - MessageFactory 의 디폴트의 구현의 작성시에 에러가 발생했다 경우
관련 항목:
SAAJMetaFactory

newInstance

public static MessageFactory  newInstance(String  protocol)
                                  throws SOAPException 
새로운 MessageFactory 객체를 작성해, 지정의 구현 인스턴스로 합니다(동적인 메세지 팩토리, SOAP 1.1 메세지 팩토리, 또는 SOAP 1.2 메세지 팩토리). 동적인 메세지 팩토리는,createMessage 의 인수로서 지정된 MIME 헤더에 근거해 메세지를 작성합니다. 이 메소드는 SAAJMetaFactory 를 사용해 구현 클래스를 검색해, MessageFactory 의 인스턴스를 작성합니다.

파라미터:
protocol - 지정의 메세지 팩토리의 클래스를 나타낸다 캐릭터 라인 정수 캐릭터 라인 정수는 DYNAMIC_SOAP_PROTOCOL, DEFAULT_SOAP_PROTOCOL (SOAP_1_1_PROTOCOL 와 같이), SOAP_1_2_PROTOCOL 의 어느 쪽인가에 된다
반환값:
MessageFactory 의 새로운 인스턴스
예외:
SOAPException - 지정의 MessageFactory 의 구현의 작성시에 에러가 발생했을 경우
도입된 버젼:
SAAJ 1.3
관련 항목:
SAAJMetaFactory

createMessage

public abstract SOAPMessage  createMessage()
                                   throws SOAPException 
디폴트의SOAPPart,SOAPEnvelope,SOAPBody, 및SOAPHeader 객체를 사용해,SOAPMessage 객체를 새롭게 작성합니다. 프로파일 고유의 메세지 팩토리는, 프로파일 고유의 헤더를 가지는 SOAPMessage 객체를 미리 작성하는 것을 선택할 수 있습니다.  

이 메세지의 SOAPPart 객체에는 컨텐츠를 추가할 수 있습니다. SOAP 부분만을 포함한 메세지가 충분히 충분한 경우, 메세지는 그대로의 상태로 송신할 수 있습니다. 충분하지 않은 경우,SOAPMessage 객체는 필요한 분 AttachmentPart 객체를 작성해, 그것들을 자신에게 추가할 필요가 있습니다. XML 형식이 아닌 컨텐츠는 AttachmentPart 객체내에 있을 필요가 있습니다.

반환값:
새로운 SOAPMessage 객체
예외:
SOAPException - SOAP 에러가 발생했을 경우
UnsupportedOperationException - 이 MessageFactory 인스턴스의 프로토콜이 DYNAMIC_SOAP_PROTOCOL 인 경우

createMessage

public abstract SOAPMessage  createMessage(MimeHeaders  headers,
                                          InputStream  in)
                                   throws IOException ,
                                          SOAPException 
지정의 InputStream 객체의 컨텐츠를 새로운 SOAPMessage 객체에 내부화해, 그 SOAPMessage 객체를 돌려줍니다.

파라미터:
in - 메세지의 데이터를 포함한다 InputStream 객체
headers - 메세지 작성시에 전송에 의존하지 않는 방식에서 메세지에게 건네진다 전송 고유의 헤더
반환값:
지정의InputStream 객체의 데이터를 포함한다 새로운 SOAPMessage 객체
예외:
IOException - 입력 스트림로부터의 데이터의 read에 문제가 발생했을 경우
SOAPException - 메세지가 무효의 경우, throw 된다
IllegalArgumentException - MessageFactoryheaders 파라미터에 필요한 1 개(살) 또는 복수의 MIME 헤더가 존재하지 않는 경우 이 이유로부터,SOAP_1_1_PROTOCOL 또는 SOAP_1_2_PROTOCOLMessageFactory 구현에서는, IllegalArgumentException 를 throw 하지 않는다

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 도 참조해 주세요.