java.lang.Objectjavax.xml.soap.MessageFactory
public abstract class MessageFactory
      创建 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 对象中的附加条目预填充的消息。新的 
  SOAPMessage 对象的内容取决于使用两种 
  MessageFactory 方法中的哪一种创建该对象。 
  createMessage() createMessage(MimeHeaders, java.io.InputStream) -- 消息的内容取自 InputStream 对象,头取自 MimeHeaders 对象。 
| 构造方法摘要 | |
|---|---|
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 对象,该对象是指定实现的实例。 |  
    
| 从类 java.lang.Object 继承的方法 | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |  
    
| 构造方法详细信息 | 
|---|
public MessageFactory()
| 方法详细信息 | 
|---|
public static MessageFactory newInstance() throws SOAPException
MessageFactory 对象,该对象是默认实现 (SOAP 1.1) 的实例。 此方法使用以下查找过程顺序来确定要加载的 MessageFactory 实现类: 
    
MessageFactory 实例 
     SOAPException - 如果创建默认的 
      MessageFactory 实现时存在错误。
     SAAJMetaFactory
     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 实例时存在错误。
     SAAJMetaFactory
     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
     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 参数中,但是它们丢失了。
      SOAP_1_1_PROTOCOL 或 
      SOAP_1_2_PROTOCOL 的 
      MessageFactory 实现不得因此抛出 
      IllegalArgumentException。