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对象:
SOAPPart对象 SOAPEnvelope对象 SOAPBody对象 SOAPHeader对象 SOAPHeader对象和SOAPBody对象中的SOAPHeader条目的消息。
新的SOAPMessage对象的内容取决于两个MessageFactory方法中的MessageFactory一个用于创建它。
createMessage() createMessage(MimeHeaders, java.io.InputStream) -消息具有从所述内容InputStream从对象和标题MimeHeaders对象 | Constructor and Description |
|---|
MessageFactory() |
| Modifier and Type | Method and Description |
|---|---|
abstract SOAPMessage |
createMessage()
创建一个新
SOAPMessage与默认对象
SOAPPart ,
SOAPEnvelope ,
SOAPBody和
SOAPHeader对象。
|
abstract SOAPMessage |
createMessage(MimeHeaders headers, InputStream in)
将给定的
InputStream对象的内容内化为一个新的
SOAPMessage对象,并返回
SOAPMessage对象。
|
static MessageFactory |
newInstance()
创建一个新的
MessageFactory对象,该对象是默认实现(SOAP 1.1)的实例。此方法使用以下有序查找过程来确定要加载的MessageFactory实现类:使用javax.xml.soap.MessageFactory系统属性。
|
static MessageFactory |
newInstance(String protocol)
创建一个新的
MessageFactory对象,该对象是指定实现的一个实例。
|
public static MessageFactory newInstance() throws SOAPException
MessageFactory对象,该对象是默认实现(SOAP 1.1)的实例。此方法使用以下有序查找过程来确定要加载的MessageFactory实现类:
MessageFactory实例
SOAPException - 如果创建MessageFactory的默认实现时
MessageFactory 。
SAAJMetaFactory
public static MessageFactory newInstance(String protocol) throws SOAPException
MessageFactory对象,该对象是指定实现的实例。
可能是一个动态消息工厂,一个SOAP 1.1消息工厂或一个SOAP 1.2消息工厂。
动态消息工厂基于指定为createMessage方法的createMessage的MIME标头创建消息。
此方法使用SAAJMetaFactory来定位实现类并创建MessageFactory实例。
protocol - 表示指定消息工厂实现类的字符串常量。
可以是DYNAMIC_SOAP_PROTOCOL , DEFAULT_SOAP_PROTOCOL (其是相同的) SOAP_1_1_PROTOCOL ,或SOAP_1_2_PROTOCOL 。
MessageFactory
SOAPException -如果在创建指定执行的错误
MessageFactory 。
SAAJMetaFactory
public abstract SOAPMessage createMessage() throws SOAPException
SOAPMessage与默认对象SOAPPart , SOAPEnvelope , SOAPBody和SOAPHeader对象。
个人资料信息工厂可以选择预先SOAPMessage对象的个人资料头文件。
可以将内容添加到此消息的SOAPPart对象中,并且当仅包含SOAP部分的消息就足够时,消息可以“按原样”发送。 否则, SOAPMessage对象需要创建一个或多个AttachmentPart对象并将其添加到其自身。 任何不是XML格式的内容必须在AttachmentPart对象中。
SOAPMessage对象
SOAPException - 如果发生SOAP错误
UnsupportedOperationException - 如果这个
MessageFactory实例的协议是
DYNAMIC_SOAP_PROTOCOL
public abstract SOAPMessage createMessage(MimeHeaders headers, InputStream in) throws IOException, SOAPException
InputStream对象的内容内化为一个新的
SOAPMessage对象,并返回
SOAPMessage对象。
in - 包含消息数据的
InputStream对象
headers - 以传输独立方式传送给消息的传输特定头文件用于创建消息
SOAPMessage对象包含来自给定的
InputStream对象的数据
IOException - 如果从输入流读取数据有问题
SOAPException - 如果消息无效,可能会抛出
IllegalArgumentException - 如果MessageFactory需要一个或多个MIME标头存在于headers参数中,并且它们丢失。
MessageFactory实现为SOAP_1_1_PROTOCOL或SOAP_1_2_PROTOCOL不得抛出IllegalArgumentException这个原因。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.