JavaTM Platform
Standard Ed. 6

javax.xml.soap
接口 SOAPElement

所有超级接口:
Element, Node
所有已知子接口:
Detail, DetailEntry, SOAPBody, SOAPBodyElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement

public interface SOAPElement
extends Node, Element

表示 SOAP 规范允许使用但未特别规定的 SOAP 消息元素的对象。此接口充当 SOAP 规范特别规定的那些对象的基本接口。

此接口中要求返回特定于 SAAJ 的对象的那些方法可以“安静地”替换树中的节点,以便按要求成功返回正确类型的对象。有关详细信息,请参见 getChildElements()javax.xml.soap


字段摘要
 
从接口 org.w3c.dom.Node 继承的字段
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
方法摘要
 SOAPElement addAttribute(Name name, String value)
          将带有指定名称和值的属性添加到此 SOAPElement 对象。
 SOAPElement addAttribute(QName qname, String value)
          将带有指定名称和值的属性添加到此 SOAPElement 对象。
 SOAPElement addChildElement(Name name)
          创建使用给定 Name 对象初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。
 SOAPElement addChildElement(QName qname)
          创建使用给定 QName 对象初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。
 SOAPElement addChildElement(SOAPElement element)
          将 SOAPElement 作为此 SOAPElement 实例的子级添加。
 SOAPElement addChildElement(String localName)
          创建使用指定本地名称初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。
 SOAPElement addChildElement(String localName, String prefix)
          创建使用指定本地名称和前缀初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。
 SOAPElement addChildElement(String localName, String prefix, String uri)
          创建使用指定本地名称、前缀和 URI 初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。
 SOAPElement addNamespaceDeclaration(String prefix, String uri)
          将带有指定前缀和 URI 的名称空间声明添加到此 SOAPElement 对象。
 SOAPElement addTextNode(String text)
          创建使用给定 String 初始化的新 Text 对象,并将其添加到此 SOAPElement 对象。
 QName createQName(String localName, String prefix)
          创建一个 QName,其名称空间 URI 应与此 SOAPElement 上下文中的参数、prefix 相关联。
 Iterator getAllAttributes()
          返回可在此 SOAPElement 对象中所有属性 Name 对象上进行迭代的 Iterator
 Iterator getAllAttributesAsQNames()
          返回可在此 SOAPElement 对象(以 QName 对象的形式)中的所有属性上进行迭代的 Iterator
 String getAttributeValue(Name name)
          返回带有指定名称的属性值。
 String getAttributeValue(QName qname)
          返回带有指定 qname 的属性值。
 Iterator getChildElements()
          返回可在此元素的所有直接子 Node 上进行迭代的 Iterator
 Iterator getChildElements(Name name)
          返回可在带有指定名称的此元素所有直接子 Node 上进行迭代的 Iterator
 Iterator getChildElements(QName qname)
          返回可在带有指定 qname 的此元素所有直接子 Node 上进行迭代的 Iterator
 Name getElementName()
          返回此 SOAPElement 对象的名称。
 QName getElementQName()
          返回此 SOAPElement 对象的 qname。
 String getEncodingStyle()
          返回此 SOAPElement 对象的编码样式。
 Iterator getNamespacePrefixes()
          返回可在此元素声明的名称空间前缀 String 上进行迭代的 Iterator
 String getNamespaceURI(String prefix)
          返回带有给定前缀的名称空间的 URI。
 Iterator getVisibleNamespacePrefixes()
          返回在此元素可见的名称空间前缀 String 上进行迭代的 Iterator
 boolean removeAttribute(Name name)
          移除带有指定名称的属性。
 boolean removeAttribute(QName qname)
          移除带有指定 qname 的属性。
 void removeContents()
          分离此 SOAPElement 的所有子级。
 boolean removeNamespaceDeclaration(String prefix)
          移除对应于给定前缀的名称空间声明。
 SOAPElement setElementQName(QName newName)
          如果可能,将此 Element 的名称更改为 newName
 void setEncodingStyle(String encodingStyle)
          将此 SOAPElement 对象的编码样式设置为指定样式。
 
从接口 javax.xml.soap.Node 继承的方法
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
 
从接口 org.w3c.dom.Element 继承的方法
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
 
从接口 org.w3c.dom.Node 继承的方法
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

方法详细信息

addChildElement

SOAPElement addChildElement(Name name)
                            throws SOAPException
创建使用给定 Name 对象初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。

此方法在以后的 SAAJ 版本中可能会被废弃,并用 addChildElement(javax.xml.namespace.QName) 取代。

参数:
name - Name 对象,带有新元素的 XML 名称
返回:
创建的新 SOAPElement 对象
抛出:
SOAPException - 如果在创建 SOAPElement 对象时发生错误
另请参见:
addChildElement(javax.xml.namespace.QName)

addChildElement

SOAPElement addChildElement(QName qname)
                            throws SOAPException
创建使用给定 QName 对象初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。新 SOAPElementnamespacelocalnameprefix 都取自 qname 参数。

参数:
qname - QName 对象,带有新元素的 XML 名称
返回:
创建的新 SOAPElement 对象
抛出:
SOAPException - 如果在创建 SOAPElement 对象时发生错误
从以下版本开始:
SAAJ 1.3
另请参见:
addChildElement(Name)

addChildElement

SOAPElement addChildElement(String localName)
                            throws SOAPException
创建使用指定本地名称初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。新的 SOAPElement 继承任何作用域内的默认名称空间。

参数:
localName - 给出元素本地名称的 String
返回:
创建的新 SOAPElement 对象
抛出:
SOAPException - 如果在创建 SOAPElement 对象时发生错误

addChildElement

SOAPElement addChildElement(String localName,
                            String prefix)
                            throws SOAPException
创建使用指定本地名称和前缀初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。

参数:
localName - 给出新元素本地名称的 String
prefix - 给出新元素名称空间前缀的 String
返回:
创建的新 SOAPElement 对象
抛出:
SOAPException - 如果 prefix 在此 SOAPElement 上下文中无效,或者在创建 SOAPElement 对象时发生错误

addChildElement

SOAPElement addChildElement(String localName,
                            String prefix,
                            String uri)
                            throws SOAPException
创建使用指定本地名称、前缀和 URI 初始化的新 SOAPElement 对象,并将该新元素添加到此 SOAPElement 对象。

参数:
localName - 给出新元素本地名称的 String
prefix - 给出新元素名称空间前缀的 String
uri - 给出新元素所属空间名称 URI 的 String
返回:
创建的新 SOAPElement 对象
抛出:
SOAPException - 如果在创建 SOAPElement 对象时发生错误

addChildElement

SOAPElement addChildElement(SOAPElement element)
                            throws SOAPException
SOAPElement 作为此 SOAPElement 实例的子级添加。应该由 SOAPFactory 来创建 SOAPElement。调用者不应依靠此方式添加到 XML 树的元素实例。实现最后可以将传递的 SOAPElement 的内容复制到一个不同 SOAPElement 实现的实例中。例如,如果对 SOAPHeader 调用 addChildElement(),则 element 将被复制到 SOAPHeaderElement 的实例中。

element 为根的片段将作为一个整体添加,如果发生错误,则不添加。

element 为根的片段不能包含名为 "Envelope"、"Header" 或 "Body" 且属于 SOAP 名称空间的元素。片段中出现的任何名称空间前缀都应该使用片段本身中适当的名称空间声明来完整解析。

参数:
element - 要作为新子级添加的 SOAPElement
返回:
一个实例,表示实际添加到树的新 SOAP 元素。
抛出:
SOAPException - 如果在作为子级添加此元素时出现错误

removeContents

void removeContents()
分离此 SOAPElement 的所有子级。

此方法对回滚部分完成的 SOAPHeadersSOAPBodys 的构造很有用,便于准备在检测到错误条件时发送错误。它对于回收 SOAP 消息中的文档各部分也很有用。

从以下版本开始:
SAAJ 1.2

addTextNode

SOAPElement addTextNode(String text)
                        throws SOAPException
创建使用给定 String 初始化的新 Text 对象,并将其添加到此 SOAPElement 对象。

参数:
text - 带有要添加文本内容的 String 对象
返回:
将插入新 Text 对象的 SOAPElement 对象
抛出:
SOAPException - 如果在创建新 Text 时发生错误,或者将它作为子级附加到此 SOAPElement 不合法

addAttribute

SOAPElement addAttribute(Name name,
                         String value)
                         throws SOAPException
将带有指定名称和值的属性添加到此 SOAPElement 对象。

参数:
name - 带有属性名称的 Name 对象
value - 给出属性值的 String
返回:
将插入属性的 SOAPElement 对象
抛出:
SOAPException - 如果在创建属性时发生错误,或者在此 SOAPElement 上设置带有 Name name 的属性无效。
另请参见:
addAttribute(javax.xml.namespace.QName, String)

addAttribute

SOAPElement addAttribute(QName qname,
                         String value)
                         throws SOAPException
将带有指定名称和值的属性添加到此 SOAPElement 对象。

参数:
qname - 带有属性名称的 QName 对象
value - 给出属性值的 String
返回:
将插入属性的 SOAPElement 对象
抛出:
SOAPException - 如果在创建属性时出现错误,如果在此 SOAPElement 上设置带有 QName qname 的属性无效。
从以下版本开始:
SAAJ 1.3
另请参见:
addAttribute(Name, String)

addNamespaceDeclaration

SOAPElement addNamespaceDeclaration(String prefix,
                                    String uri)
                                    throws SOAPException
将带有指定前缀和 URI 的名称空间声明添加到此 SOAPElement 对象。

参数:
prefix - 给出名称空间前缀的 String
uri - 给出名称空间 URI 的 String
返回:
将插入名称空间声明的 SOAPElement 对象。
抛出:
SOAPException - 如果在创建名称空间时发生错误

getAttributeValue

String getAttributeValue(Name name)
返回带有指定名称的属性值。

参数:
name - 带有属性名称的 Name 对象
返回:
给出指定属性值的 String,如果没有这种属性,则返回 Null
另请参见:
getAttributeValue(javax.xml.namespace.QName)

getAttributeValue

String getAttributeValue(QName qname)
返回带有指定 qname 的属性值。

参数:
qname - 带有属性 qname 的 QName 对象
返回:
给出指定属性值的 String,如果没有这种属性,则返回 Null
从以下版本开始:
SAAJ 1.3
另请参见:
getAttributeValue(Name)

getAllAttributes

Iterator getAllAttributes()
返回可在此 SOAPElement 对象中所有属性 Name 对象上进行迭代的 Iterator。迭代器可以用于获取属性名称,然后可将这些名称传递给方法 getAttributeValue 以检索每个属性的值。

返回:
在属性名称上进行迭代的迭代器
另请参见:
getAllAttributesAsQNames()

getAllAttributesAsQNames

Iterator getAllAttributesAsQNames()
返回可在此 SOAPElement 对象(以 QName 对象的形式)中的所有属性上进行迭代的 Iterator。迭代器可以用于获取属性 QName,然后可将这些名称传递给方法 getAttributeValue 以检索每个属性的值。

返回:
在属性的 QNames 上进行迭代的迭代器
从以下版本开始:
SAAJ 1.3
另请参见:
getAllAttributes()

getNamespaceURI

String getNamespaceURI(String prefix)
返回带有给定前缀的名称空间的 URI。

参数:
prefix - 一个 String,给出用来搜索的名称空间前缀
返回:
一个 String,带有给定前缀名称空间的 URI

getNamespacePrefixes

Iterator getNamespacePrefixes()
返回可在此元素声明的名称空间前缀 String 上进行迭代的 Iterator。由此迭代器返回的前缀可以传递给方法 getNamespaceURI,以检索每个名称空间的 URI。

返回:
在此 SOAPElement 对象的名称空间前缀上进行迭代的迭代器

getVisibleNamespacePrefixes

Iterator getVisibleNamespacePrefixes()
返回在此元素可见的名称空间前缀 String 上进行迭代的 Iterator。由此迭代器返回的前缀可以传递给方法 getNamespaceURI,以检索每个名称空间的 URI。

返回:
在此 SOAPElement 对象作用域内的名称空间前缀上进行迭代的迭代器
从以下版本开始:
SAAJ 1.2

createQName

QName createQName(String localName,
                  String prefix)
                  throws SOAPException
创建一个 QName,其名称空间 URI 应与此 SOAPElement 上下文中的参数、prefix 相关联。新 QName 的其余元素都直接取自参数、localNameprefix

参数:
localName - 包含名称本地部分的 String
prefix - 包含名称前缀的 String
返回:
一个 QName,带有指定的 localNameprefix,以及与此 SOAPElement 上下文中的 prefix 关联的名称空间。如果将 prefix 作为参数提供给 getNamespaceURI(String),则此名称空间将与该方法返回的名称空间相同。
抛出:
SOAPException - 如果无法创建 QName
从以下版本开始:
SAAJ 1.3

getElementName

Name getElementName()
返回此 SOAPElement 对象的名称。

返回:
具有此 SOAPElement 对象名称的 Name 对象

getElementQName

QName getElementQName()
返回此 SOAPElement 对象的 qname。

返回:
具有此 SOAPElement 对象 qname 的 QName 对象
从以下版本开始:
SAAJ 1.3
另请参见:
getElementName()

setElementQName

SOAPElement setElementQName(QName newName)
                            throws SOAPException
如果可能,将此 Element 的名称更改为 newName。SOAP 定义的元素,如 SOAPEnvelope、SOAPHeader、SOAPBody 等,都无法使用此方法更改它们的名称。任何此类尝试都会导致抛出 SOAPException。

调用者不应依靠按此方式重命名的元素实例。实现最后可以将 SOAPElement 的内容复制到重命名实例。

参数:
newName - Element 的新名称。
返回:
重命名的节点
抛出:
SOAPException - 如果不允许更改此 Element 的名称。
从以下版本开始:
SAAJ 1.3

removeAttribute

boolean removeAttribute(Name name)
移除带有指定名称的属性。

参数:
name - Name 对象,带有要移除属性的名称
返回:
如果成功移除了属性,则返回 true;否则返回 false
另请参见:
removeAttribute(javax.xml.namespace.QName)

removeAttribute

boolean removeAttribute(QName qname)
移除带有指定 qname 的属性。

参数:
qname - QName 对象,带有要移除属性的 qname
返回:
如果成功移除了属性,则返回 true;否则返回 false
从以下版本开始:
SAAJ 1.3
另请参见:
removeAttribute(Name)

removeNamespaceDeclaration

boolean removeNamespaceDeclaration(String prefix)
移除对应于给定前缀的名称空间声明。

参数:
prefix - 一个 String,给出用来搜索的前缀
返回:
如果成功移除了名称空间声明,则返回 true;否则返回 false

getChildElements

Iterator getChildElements()
返回可在此元素的所有直接子 Node 上进行迭代的 Iterator。这包括 javax.xml.soap.Text 对象以及 SOAPElement 对象。

调用此方法可能导致子 ElementSOAPElementorg.w3c.dom.Text 节点被适合于此父节点类型的 SOAPElementSOAPHeaderElementSOAPBodyElementjavax.xml.soap.Text 节点替换。因此,调用的应用程序必须将任何现有的对通过 DOM API 获取的那些子节点的引用视为无效,并将其丢弃或用此 Iterator 返回的值进行更新。可以通过调用等效的 DOM API 来避免此行为。有关更多信息,请参阅 javax.xml.soap

返回:
带有此 SOAPElement 对象内容的迭代器

getChildElements

Iterator getChildElements(Name name)
返回可在带有指定名称的此元素所有直接子 Node 上进行迭代的 Iterator。所有这些子节点都将是 SOAPElement 节点。

调用此方法可能导致子 ElementSOAPElementorg.w3c.dom.Text 节点被适合于此父节点类型的 SOAPElementSOAPHeaderElementSOAPBodyElementjavax.xml.soap.Text 节点替换。因此,调用的应用程序必须将任何现有的对通过 DOM API 获取的那些子节点的引用视为无效,并将其丢弃或用此 Iterator 返回的值进行更新。可以通过调用等效的 DOM API 来避免此行为。有关更多信息,请参阅 javax.xml.soap

参数:
name - Name 对象,带有要返回的子元素的名称
返回:
在带有指定名称的此 SOAPElement 对象的所有元素上进行迭代的 Iterator 对象
另请参见:
getChildElements(javax.xml.namespace.QName)

getChildElements

Iterator getChildElements(QName qname)
返回可在带有指定 qname 的此元素所有直接子 Node 上进行迭代的 Iterator。所有这些子节点都将是 SOAPElement 节点。

调用此方法可能导致子 ElementSOAPElementorg.w3c.dom.Text 节点被适合于此父节点类型的 SOAPElementSOAPHeaderElementSOAPBodyElementjavax.xml.soap.Text 节点替换。因此,调用的应用程序必须将任何现有的对通过 DOM API 获取的那些子节点的引用视为无效,并将其丢弃或用此 Iterator 返回的值进行更新。可以通过调用等效的 DOM API 来避免此行为。有关更多信息,请参阅 javax.xml.soap

参数:
qname - QName 对象,带有要返回的子元素的 qname
返回:
在带有指定 qname 的此 SOAPElement 对象的所有元素上进行迭代的 Iterator 对象
从以下版本开始:
SAAJ 1.3
另请参见:
getChildElements(Name)

setEncodingStyle

void setEncodingStyle(String encodingStyle)
                      throws SOAPException
将此 SOAPElement 对象的编码样式设置为指定样式。

参数:
encodingStyle - 给出编码样式的 String
抛出:
IllegalArgumentException - 如果在设置编码样式时出现问题。
SOAPException - 如果为此 SOAPElement 设置的编码样式无效。
另请参见:
getEncodingStyle()

getEncodingStyle

String getEncodingStyle()
返回此 SOAPElement 对象的编码样式。

返回:
给出编码样式的 String
另请参见:
setEncodingStyle(java.lang.String)

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策