| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
public interface SOAPEnvelope
      SOAPPart 对象的 SOAPHeader 和 SOAPBody 部分的容器。默认情况下,使用带有 SOAPEnvelope 对象的 SOAPPart 对象创建 SOAPMessage 对象。SOAPEnvelope 对象默认带有空 SOAPBody 对象和空 SOAPHeader 对象。SOAPBody 对象是必需的,SOAPHeader 对象虽然是可选的,但在大多数情况下都会用到。如果不需要 SOAPHeader 对象,则可以删除该对象(稍后将显示该操作)。 
 客户端可以通过调用方法 SOAPEnvelope.getHeader 和 SOAPEnvelope.getBody 来访问 SOAPHeader 和 SOAPBody 对象。以下代码行首先使用 SOAPMessage 对象 message 获取 SOAPPart 对象 sp,然后使用后者获取 SOAPEnvelope 对象 se,最后调用上述的两种方法。 
SOAPPart sp = message.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPHeader sh = se.getHeader(); SOAPBody sb = se.getBody();
 检索 SOAPEnvelope 对象当前的正文或头,然后将其删除并添加一个新正文或头,这样就能更改该对象的正文或头。javax.xml.soap.Node 方法 deleteNode 删除调用它的 XML 元素(节点)。例如,以下代码行删除由方法 getBody 检索的 SOAPBody 对象。 
se.getBody().detachNode();要创建用来替换被移除对象的
SOAPHeader 对象,客户端应使用方法 
  SOAPEnvelope.addHeader,该方法创建一个新头并将其添加到 
  SOAPEnvelope 对象。类似地,方法 
  addBody 创建一个新 
  SOAPBody 对象并将其添加到 
  SOAPEnvelope 对象。以下代码片段检索当前的头,然后将其删除并添加一个新头。接下来检索当前的正文,然后将其删除并添加一个新正文。 
  SOAPPart sp = message.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); se.getHeader().detachNode(); SOAPHeader sh = se.addHeader(); se.getBody().detachNode(); SOAPBody sb = se.addBody();在已经存在的情况下添加
SOAPBody 或 
  SOAPHeader 是错误的。 
   SOAPEnvelope 接口提供了三种创建 Name 对象的方法。第一种方法使用本地名称、名称空间前缀以及名称空间 URI 创建 Name 对象。第二种方法使用本地名称和名称空间前缀创建 Name 对象,第三种方法只使用本地名称创建 Name 对象。以下代码行(其中 se 是一个 SOAPEnvelope 对象)创建带有所有三个元素的新 Name 对象。 
Name name = se.createName("GetLastTradePrice", "WOMBAT",
"http://www.wombat.org/trader");
  
  
| 字段摘要 | 
|---|
| 方法摘要 | |
|---|---|
|  SOAPBody | addBody()创建一个 SOAPBody对象,并将其设置为此SOAPEnvelope对象的SOAPBody对象。 | 
|  SOAPHeader | addHeader()创建一个 SOAPHeader对象,并将其设置为此SOAPEnvelope对象的SOAPHeader对象。 | 
|  Name | createName(String localName)创建使用给定本地名称初始化的新 Name对象。 | 
|  Name | createName(String localName, String prefix, String uri)创建使用给定本地名称、名称空间前缀和名称空间 URL 初始化的新 Name对象。 | 
|  SOAPBody | getBody()返回与此 SOAPEnvelope对象关联的SOAPBody对象。 | 
|  SOAPHeader | getHeader()返回此 SOAPEnvelope对象的SOAPHeader对象。 | 
| 从接口 javax.xml.soap.Node 继承的方法 | 
|---|
| detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue | 
| 方法详细信息 | 
|---|
Name createName(String localName,
                String prefix,
                String uri)
                throws SOAPException 
  Name 对象。 
     此工厂方法创建在 SOAP/XML 文档中使用的 Name 对象。 
localName - 给出本地名称的 
      String
     prefix - 给出名称空间前缀的 
      String
     uri - 给出名称空间 URI 的 
      String 
     Name 对象 
     SOAPException - 如果存在 SOAP 错误
     
Name createName(String localName)
                throws SOAPException 
  Name 对象。 
     此工厂方法创建在 SOAP/XML 文档中使用的 Name 对象。 
localName - 给出本地名称的 
      String 
     Name 对象 
     SOAPException - 如果存在 SOAP 错误
     
SOAPHeader getHeader()
                     throws SOAPException 
  SOAPEnvelope 对象的 
    SOAPHeader 对象。 
     默认情况下,使用包含空 SOAPHeader 对象的 SOAPEnvelope 对象创建新 SOAPMessage 对象。因此,只要没有移除了头且尚未添加新头,方法 getHeader 将总是返回 SOAPHeader 对象。 
SOAPHeader 对象,如果没有该对象,则返回 
      null 
     SOAPException - 如果在获取 
      SOAPHeader 对象时出现问题
     
SOAPBody getBody()
                 throws SOAPException 
  SOAPEnvelope 对象关联的 
    SOAPBody 对象。 
     默认情况下,使用包含空 SOAPBody 对象的 SOAPEnvelope 对象创建 SOAPMessage 对象。因此,只要没有移除了正文且尚未添加新正文,方法 getBody 将总是返回 SOAPBody 对象。 
SOAPEnvelope 对象的 
      SOAPBody 的对象,如果没有该对象,则返回 
      null 
     SOAPException - 如果在获取 
      SOAPBody 对象时出现问题
     
SOAPHeader addHeader()
                     throws SOAPException 
  SOAPHeader 对象,并将其设置为此 
    SOAPEnvelope 对象的 
    SOAPHeader 对象。 
    当信封已包含头时,添加头是非法的。因此,此方法应该在移除了现有的头之后调用。
SOAPHeader 对象 
     SOAPException - 如果此 
      SOAPEnvelope 对象已包含一个有效的 
      SOAPHeader 对象
     
SOAPBody addBody()
                 throws SOAPException 
  SOAPBody 对象,并将其设置为此 
    SOAPEnvelope 对象的 
    SOAPBody 对象。 
    当信封已包含正文时,添加正文是非法的。因此,此方法应该在移除了现有的正文之后调用。
SOAPBody 对象 
     SOAPException - 如果此 
      SOAPEnvelope 对象已包含一个有效的 
      SOAPBody 对象
     | 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。