Top Description Methods
jakarta.xml.soap

public Interface SOAPElement

extends Node, Element
Known Direct Subinterfaces
jakarta.xml.soap.SOAPEnvelope, jakarta.xml.soap.SOAPFaultElement, jakarta.xml.soap.SOAPHeader, jakarta.xml.soap.SOAPHeaderElement, jakarta.xml.soap.DetailEntry, jakarta.xml.soap.SOAPBody, jakarta.xml.soap.SOAPBodyElement
Imports
java.util.Iterator, javax.xml.namespace.QName

An object representing an element of a SOAP message that is allowed but not specifically prescribed by a SOAP specification. This interface serves as the base interface for those objects that are specifically prescribed by a SOAP specification.

Methods in this interface that are required to return SAAJ specific objects may "silently" replace nodes in the tree as required to successfully return objects of the correct type. See getChildElements() and jakarta.xml.soap for details.

Since
1.6

Method Summary

Modifier and TypeMethod and Description
public SOAPElement

Returns:

the SOAPElement object into which the attribute was inserted
addAttribute
(Name
a Name object with the name of the attribute
name
,
String
a String giving the value of the attribute
value
)

Adds an attribute with the specified name and value to this SOAPElement object.

public SOAPElement

Returns:

the SOAPElement object into which the attribute was inserted
addAttribute
(QName
a QName object with the name of the attribute
qname
,
String
a String giving the value of the attribute
value
)

Adds an attribute with the specified name and value to this SOAPElement object.

public SOAPElement

Returns:

the new SOAPElement object that was created
addChildElement
(Name
a Name object with the XML name for the new element
name
)

Creates a new SOAPElement object initialized with the given Name object and adds the new element to this SOAPElement object.

public SOAPElement

Returns:

the new SOAPElement object that was created
addChildElement
(QName
a QName object with the XML name for the new element
qname
)

Creates a new SOAPElement object initialized with the given QName object and adds the new element to this SOAPElement object.

public SOAPElement

Returns:

the new SOAPElement object that was created
addChildElement
(String
a String giving the local name for the element
localName
)

Creates a new SOAPElement object initialized with the specified local name and adds the new element to this SOAPElement object.

public SOAPElement

Returns:

the new SOAPElement object that was created
addChildElement
(String
a String giving the local name for the new element
localName
,
String
a String giving the namespace prefix for the new element
prefix
)

Creates a new SOAPElement object initialized with the specified local name and prefix and adds the new element to this SOAPElement object.

public SOAPElement

Returns:

the new SOAPElement object that was created
addChildElement
(String
a String giving the local name for the new element
localName
,
String
a String giving the namespace prefix for the new element
prefix
,
String
a String giving the URI of the namespace to which the new element belongs
uri
)

Creates a new SOAPElement object initialized with the specified local name, prefix, and URI and adds the new element to this SOAPElement object.

public SOAPElement

Returns:

an instance representing the new SOAP element that was actually added to the tree.
addChildElement
(SOAPElement
the SOAPElement to be added as a new child
element
)

Add a SOAPElement as a child of this SOAPElement instance.

public SOAPElement

Returns:

the SOAPElement object into which this namespace declaration was inserted.
addNamespaceDeclaration
(String
a String giving the prefix of the namespace
prefix
,
String
a String giving the uri of the namespace
uri
)

Adds a namespace declaration with the specified prefix and URI to this SOAPElement object.

public SOAPElement

Returns:

the SOAPElement object into which the new Text object was inserted
addTextNode
(String
a String object with the textual content to be added
text
)

Creates a new Text object initialized with the given String and adds it to this SOAPElement object.

public QName

Returns:

a QName with the specified localName and prefix, and with a namespace that is associated with the prefix in the context of this SOAPElement. This namespace will be the same as the one that would be returned by getNamespaceURI(String) if it were given prefix as it's parameter.
createQName
(String
a String containing the local part of the name.
localName
,
String
a String containing the prefix for the name.
prefix
)

Creates a QName whose namespace URI is the one associated with the parameter, prefix, in the context of this SOAPElement.

public Iterator<Name>

Returns:

an iterator over the names of the attributes
getAllAttributes
()

Returns an Iterator over all of the attribute Name objects in this SOAPElement object.

public Iterator<QName>

Returns:

an iterator over the QNames of the attributes
getAllAttributesAsQNames
()

Returns an Iterator over all of the attributes in this SOAPElement as QName objects.

public String

Returns:

a String giving the value of the specified attribute, Null if there is no such attribute
getAttributeValue
(Name
a Name object with the name of the attribute
name
)

Returns the value of the attribute with the specified name.

public String

Returns:

a String giving the value of the specified attribute, Null if there is no such attribute
getAttributeValue
(QName
a QName object with the qname of the attribute
qname
)

Returns the value of the attribute with the specified qname.

public Iterator<Node>

Returns:

an iterator with the content of this SOAPElement object
getChildElements
()

Returns an Iterator over all the immediate child Nodes of this element.

public Iterator<Node>

Returns:

an Iterator object over all the elements in this SOAPElement object with the specified name
getChildElements
(Name
a Name object with the name of the child elements to be returned
name
)

Returns an Iterator over all the immediate child Nodes of this element with the specified name.

public Iterator<Node>

Returns:

an Iterator object over all the elements in this SOAPElement object with the specified qname
getChildElements
(QName
a QName object with the qname of the child elements to be returned
qname
)

Returns an Iterator over all the immediate child Nodes of this element with the specified qname.

public Name

Returns:

a Name object with the name of this SOAPElement object
getElementName
()

Returns the name of this SOAPElement object.

public QName

Returns:

a QName object with the qname of this SOAPElement object
getElementQName
()

Returns the qname of this SOAPElement object.

public String

Returns:

a String giving the encoding style
getEncodingStyle
()

Returns the encoding style for this SOAPElement object.

public Iterator<String>

Returns:

an iterator over the namespace prefixes in this SOAPElement object
getNamespacePrefixes
()

Returns an Iterator over the namespace prefix Strings declared by this element.

public String

Returns:

a String with the uri of the namespace that has the given prefix
getNamespaceURI
(String
a String giving the prefix of the namespace for which to search
prefix
)

Returns the URI of the namespace that has the given prefix.

public Iterator<String>

Returns:

an iterator over the namespace prefixes are within scope of this SOAPElement object
getVisibleNamespacePrefixes
()

Returns an Iterator over the namespace prefix Strings visible to this element.

public boolean

Returns:

true if the attribute was removed successfully; false if it was not
removeAttribute
(Name
the Name object with the name of the attribute to be removed
name
)

Removes the attribute with the specified name.

public boolean

Returns:

true if the attribute was removed successfully; false if it was not
removeAttribute
(QName
the QName object with the qname of the attribute to be removed
qname
)

Removes the attribute with the specified qname.

public void
removeContents()

Detaches all children of this SOAPElement.

public boolean

Returns:

true if the namespace declaration was removed successfully; false if it was not
removeNamespaceDeclaration
(String
a String giving the prefix for which to search
prefix
)

Removes the namespace declaration corresponding to the given prefix.

public SOAPElement

Returns:

The renamed Node
setElementQName
(QName
the new name for the Element.
newName
)

Changes the name of this Element to newName if possible.

public void
setEncodingStyle(String
a String giving the encoding style
encodingStyle
)

Sets the encoding style for this SOAPElement object to one specified.

Inherited from jakarta.xml.soap.Node:
detachNodegetParentElementgetValuerecycleNodesetParentElementsetValue
Inherited from org.w3c.dom.Element:
getAttributegetAttributeNodegetAttributeNodeNSgetAttributeNSgetElementsByTagNamegetElementsByTagNameNSgetSchemaTypeInfogetTagNamehasAttributehasAttributeNSremoveAttributeremoveAttributeNoderemoveAttributeNSsetAttributesetAttributeNodesetAttributeNodeNSsetAttributeNSsetIdAttributesetIdAttributeNodesetIdAttributeNS

Method Detail

addAttributeback to summary
public SOAPElement addAttribute(Name name, String value) throws SOAPException

Adds an attribute with the specified name and value to this SOAPElement object.

Parameters
name:Name

a Name object with the name of the attribute

value:String

a String giving the value of the attribute

Returns:SOAPElement

the SOAPElement object into which the attribute was inserted

Exceptions
SOAPException:
if there is an error in creating the Attribute, or it is invalid to set an attribute with Name name on this SOAPElement.
See Also
SOAPElement#addAttribute(javax.xml.namespace.QName, String)
addAttributeback to summary
public SOAPElement addAttribute(QName qname, String value) throws SOAPException

Adds an attribute with the specified name and value to this SOAPElement object.

Parameters
qname:QName

a QName object with the name of the attribute

value:String

a String giving the value of the attribute

Returns:SOAPElement

the SOAPElement object into which the attribute was inserted

Exceptions
SOAPException:
if there is an error in creating the Attribute, or it is invalid to set an attribute with QName qname on this SOAPElement.
Since
1.6, SAAJ 1.3
See Also
SOAPElement#addAttribute(Name, String)
addChildElementback to summary
public SOAPElement addChildElement(Name name) throws SOAPException

Creates a new SOAPElement object initialized with the given Name object and adds the new element to this SOAPElement object.

This method may be deprecated in a future release of SAAJ in favor of addChildElement(javax.xml.namespace.QName)

Parameters
name:Name

a Name object with the XML name for the new element

Returns:SOAPElement

the new SOAPElement object that was created

Exceptions
SOAPException:
if there is an error in creating the SOAPElement object
See Also
SOAPElement#addChildElement(javax.xml.namespace.QName)
addChildElementback to summary
public SOAPElement addChildElement(QName qname) throws SOAPException

Creates a new SOAPElement object initialized with the given QName object and adds the new element to this SOAPElement object. The namespace, localname and prefix of the new SOAPElement are all taken from the qname argument.

Parameters
qname:QName

a QName object with the XML name for the new element

Returns:SOAPElement

the new SOAPElement object that was created

Exceptions
SOAPException:
if there is an error in creating the SOAPElement object
Since
1.6, SAAJ 1.3
See Also
SOAPElement#addChildElement(Name)
addChildElementback to summary
public SOAPElement addChildElement(String localName) throws SOAPException

Creates a new SOAPElement object initialized with the specified local name and adds the new element to this SOAPElement object. The new SOAPElement inherits any in-scope default namespace.

Parameters
localName:String

a String giving the local name for the element

Returns:SOAPElement

the new SOAPElement object that was created

Exceptions
SOAPException:
if there is an error in creating the SOAPElement object
addChildElementback to summary
public SOAPElement addChildElement(String localName, String prefix) throws SOAPException

Creates a new SOAPElement object initialized with the specified local name and prefix and adds the new element to this SOAPElement object.

Parameters
localName:String

a String giving the local name for the new element

prefix:String

a String giving the namespace prefix for the new element

Returns:SOAPElement

the new SOAPElement object that was created

Exceptions
SOAPException:
if the prefix is not valid in the context of this SOAPElement or if there is an error in creating the SOAPElement object
addChildElementback to summary
public SOAPElement addChildElement(String localName, String prefix, String uri) throws SOAPException

Creates a new SOAPElement object initialized with the specified local name, prefix, and URI and adds the new element to this SOAPElement object.

Parameters
localName:String

a String giving the local name for the new element

prefix:String

a String giving the namespace prefix for the new element

uri:String

a String giving the URI of the namespace to which the new element belongs

Returns:SOAPElement

the new SOAPElement object that was created

Exceptions
SOAPException:
if there is an error in creating the SOAPElement object
addChildElementback to summary
public SOAPElement addChildElement(SOAPElement element) throws SOAPException

Add a SOAPElement as a child of this SOAPElement instance. The SOAPElement is expected to be created by a SOAPFactory. Callers should not rely on the element instance being added as is into the XML tree. Implementations could end up copying the content of the SOAPElement passed into an instance of a different SOAPElement implementation. For instance if addChildElement() is called on a SOAPHeader, element will be copied into an instance of a SOAPHeaderElement.

The fragment rooted in element is either added as a whole or not at all, if there was an error.

The fragment rooted in element cannot contain elements named "Envelope", "Header" or "Body" and in the SOAP namespace. Any namespace prefixes present in the fragment should be fully resolved using appropriate namespace declarations within the fragment itself.

Parameters
element:SOAPElement

the SOAPElement to be added as a new child

Returns:SOAPElement

an instance representing the new SOAP element that was actually added to the tree.

Exceptions
SOAPException:
if there was an error in adding this element as a child
addNamespaceDeclarationback to summary
public SOAPElement addNamespaceDeclaration(String prefix, String uri) throws SOAPException

Adds a namespace declaration with the specified prefix and URI to this SOAPElement object.

Parameters
prefix:String

a String giving the prefix of the namespace

uri:String

a String giving the uri of the namespace

Returns:SOAPElement

the SOAPElement object into which this namespace declaration was inserted.

Exceptions
SOAPException:
if there is an error in creating the namespace
addTextNodeback to summary
public SOAPElement addTextNode(String text) throws SOAPException

Creates a new Text object initialized with the given String and adds it to this SOAPElement object.

Parameters
text:String

a String object with the textual content to be added

Returns:SOAPElement

the SOAPElement object into which the new Text object was inserted

Exceptions
SOAPException:
if there is an error in creating the new Text object or if it is not legal to attach it as a child to this SOAPElement
createQNameback to summary
public QName createQName(String localName, String prefix) throws SOAPException

Creates a QName whose namespace URI is the one associated with the parameter, prefix, in the context of this SOAPElement. The remaining elements of the new QName are taken directly from the parameters, localName and prefix.

Parameters
localName:String

a String containing the local part of the name.

prefix:String

a String containing the prefix for the name.

Returns:QName

a QName with the specified localName and prefix, and with a namespace that is associated with the prefix in the context of this SOAPElement. This namespace will be the same as the one that would be returned by getNamespaceURI(String) if it were given prefix as it's parameter.

Exceptions
SOAPException:
if the QName cannot be created.
Since
1.6, SAAJ 1.3
getAllAttributesback to summary
public Iterator<Name> getAllAttributes()

Returns an Iterator over all of the attribute Name objects in this SOAPElement object. The iterator can be used to get the attribute names, which can then be passed to the method getAttributeValue to retrieve the value of each attribute.

Returns:Iterator<Name>

an iterator over the names of the attributes

See Also
SOAPElement#getAllAttributesAsQNames()
getAllAttributesAsQNamesback to summary
public Iterator<QName> getAllAttributesAsQNames()

Returns an Iterator over all of the attributes in this SOAPElement as QName objects. The iterator can be used to get the attribute QName, which can then be passed to the method getAttributeValue to retrieve the value of each attribute.

Returns:Iterator<QName>

an iterator over the QNames of the attributes

Since
1.6, SAAJ 1.3
See Also
SOAPElement#getAllAttributes()
getAttributeValueback to summary
public String getAttributeValue(Name name)

Returns the value of the attribute with the specified name.

Parameters
name:Name

a Name object with the name of the attribute

Returns:String

a String giving the value of the specified attribute, Null if there is no such attribute

See Also
SOAPElement#getAttributeValue(javax.xml.namespace.QName)
getAttributeValueback to summary
public String getAttributeValue(QName qname)

Returns the value of the attribute with the specified qname.

Parameters
qname:QName

a QName object with the qname of the attribute

Returns:String

a String giving the value of the specified attribute, Null if there is no such attribute

Since
1.6, SAAJ 1.3
See Also
SOAPElement#getAttributeValue(Name)
getChildElementsback to summary
public Iterator<Node> getChildElements()

Returns an Iterator over all the immediate child Nodes of this element. This includes jakarta.xml.soap.Text objects as well as SOAPElement objects.

Calling this method must cause child Element, SOAPElement and org.w3c.dom.Text nodes to be replaced by SOAPElement, SOAPHeaderElement, SOAPBodyElement or jakarta.xml.soap.Text nodes as appropriate for the type of this parent node. As a result the calling application must treat any existing references to these child nodes that have been obtained through DOM APIs as invalid and either discard them or refresh them with the values returned by this Iterator. This behavior can be avoided by calling the equivalent DOM APIs. See jakarta.xml.soap for more details.

Returns:Iterator<Node>

an iterator with the content of this SOAPElement object

getChildElementsback to summary
public Iterator<Node> getChildElements(Name name)

Returns an Iterator over all the immediate child Nodes of this element with the specified name. All of these children will be SOAPElement nodes.

Calling this method must cause child Element, SOAPElement and org.w3c.dom.Text nodes to be replaced by SOAPElement, SOAPHeaderElement, SOAPBodyElement or jakarta.xml.soap.Text nodes as appropriate for the type of this parent node. As a result the calling application must treat any existing references to these child nodes that have been obtained through DOM APIs as invalid and either discard them or refresh them with the values returned by this Iterator. This behavior can be avoided by calling the equivalent DOM APIs. See jakarta.xml.soap for more details.

Parameters
name:Name

a Name object with the name of the child elements to be returned

Returns:Iterator<Node>

an Iterator object over all the elements in this SOAPElement object with the specified name

See Also
SOAPElement#getChildElements(javax.xml.namespace.QName)
getChildElementsback to summary
public Iterator<Node> getChildElements(QName qname)

Returns an Iterator over all the immediate child Nodes of this element with the specified qname. All of these children will be SOAPElement nodes.

Calling this method must cause child Element, SOAPElement and org.w3c.dom.Text nodes to be replaced by SOAPElement, SOAPHeaderElement, SOAPBodyElement or jakarta.xml.soap.Text nodes as appropriate for the type of this parent node. As a result the calling application must treat any existing references to these child nodes that have been obtained through DOM APIs as invalid and either discard them or refresh them with the values returned by this Iterator. This behavior can be avoided by calling the equivalent DOM APIs. See jakarta.xml.soap for more details.

Parameters
qname:QName

a QName object with the qname of the child elements to be returned

Returns:Iterator<Node>

an Iterator object over all the elements in this SOAPElement object with the specified qname

Since
1.6, SAAJ 1.3
See Also
SOAPElement#getChildElements(Name)
getElementNameback to summary
public Name getElementName()

Returns the name of this SOAPElement object.

Returns:Name

a Name object with the name of this SOAPElement object

getElementQNameback to summary
public QName getElementQName()

Returns the qname of this SOAPElement object.

Returns:QName

a QName object with the qname of this SOAPElement object

Since
1.6, SAAJ 1.3
See Also
SOAPElement#getElementName()
getEncodingStyleback to summary
public String getEncodingStyle()

Returns the encoding style for this SOAPElement object.

Returns:String

a String giving the encoding style

See Also
setEncodingStyle
getNamespacePrefixesback to summary
public Iterator<String> getNamespacePrefixes()

Returns an Iterator over the namespace prefix Strings declared by this element. The prefixes returned by this iterator can be passed to the method getNamespaceURI to retrieve the URI of each namespace.

Returns:Iterator<String>

an iterator over the namespace prefixes in this SOAPElement object

getNamespaceURIback to summary
public String getNamespaceURI(String prefix)

Returns the URI of the namespace that has the given prefix.

Parameters
prefix:String

a String giving the prefix of the namespace for which to search

Returns:String

a String with the uri of the namespace that has the given prefix

getVisibleNamespacePrefixesback to summary
public Iterator<String> getVisibleNamespacePrefixes()

Returns an Iterator over the namespace prefix Strings visible to this element. The prefixes returned by this iterator can be passed to the method getNamespaceURI to retrieve the URI of each namespace.

Returns:Iterator<String>

an iterator over the namespace prefixes are within scope of this SOAPElement object

Since
1.6, SAAJ 1.2
removeAttributeback to summary
public boolean removeAttribute(Name name)

Removes the attribute with the specified name.

Parameters
name:Name

the Name object with the name of the attribute to be removed

Returns:boolean

true if the attribute was removed successfully; false if it was not

See Also
SOAPElement#removeAttribute(javax.xml.namespace.QName)
removeAttributeback to summary
public boolean removeAttribute(QName qname)

Removes the attribute with the specified qname.

Parameters
qname:QName

the QName object with the qname of the attribute to be removed

Returns:boolean

true if the attribute was removed successfully; false if it was not

Since
1.6, SAAJ 1.3
See Also
SOAPElement#removeAttribute(Name)
removeContentsback to summary
public void removeContents()

Detaches all children of this SOAPElement.

This method is useful for rolling back the construction of partially completed SOAPHeaders and SOAPBodys in preparation for sending a fault when an error condition is detected. It is also useful for recycling portions of a document within a SOAP message.

Since
1.6, SAAJ 1.2
removeNamespaceDeclarationback to summary
public boolean removeNamespaceDeclaration(String prefix)

Removes the namespace declaration corresponding to the given prefix.

Parameters
prefix:String

a String giving the prefix for which to search

Returns:boolean

true if the namespace declaration was removed successfully; false if it was not

setElementQNameback to summary
public SOAPElement setElementQName(QName newName) throws SOAPException

Changes the name of this Element to newName if possible. SOAP Defined elements such as SOAPEnvelope, SOAPHeader, SOAPBody etc. cannot have their names changed using this method. Any attempt to do so will result in a SOAPException being thrown.

Callers should not rely on the element instance being renamed as is. Implementations could end up copying the content of the SOAPElement to a renamed instance.

Parameters
newName:QName

the new name for the Element.

Returns:SOAPElement

The renamed Node

Exceptions
SOAPException:
if changing the name of this Element is not allowed.
Since
1.6, SAAJ 1.3
setEncodingStyleback to summary
public void setEncodingStyle(String encodingStyle) throws SOAPException

Sets the encoding style for this SOAPElement object to one specified.

Parameters
encodingStyle:String

a String giving the encoding style

Exceptions
SOAPException:
if setting the encodingStyle is invalid for this SOAPElement.
IllegalArgumentException:
if there was a problem in the encoding style being set.
See Also
getEncodingStyle