javax.xml.soap

Interface SOAPElement

All Superinterfaces:
org.w3c.dom.Element, Node
Known Subinterfaces:
Detail, DetailEntry, SOAPBody, SOAPBodyElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement
Known Implementing Classes:
Detail, DetailEntry, InputStreamBody, MessageElement, RPCElement, RPCHeaderParam, RPCParam, SOAPBody, SOAPBodyElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement

public interface SOAPElement
extends Node, org.w3c.dom.Element

An object representing the contents in a SOAPBody object, the contents in a SOAPHeader object, the content that can follow the SOAPBody object in a SOAPEnvelope object, or what can follow the detail element in a SOAPFault object. It is the base class for all of the classes that represent the SOAP objects as defined in the SOAP specification.

Method Summary

SOAPElement
addAttribute(Name name, String value)
Adds an attribute with the specified name and value to this SOAPElement object.
SOAPElement
addChildElement(String localName)
Creates a new SOAPElement object initialized with the given String object and adds the new element to this SOAPElement object.
SOAPElement
addChildElement(String localName, String prefix)
Creates a new SOAPElement object initialized with the specified local name and prefix and adds the new element to this SOAPElement object.
SOAPElement
addChildElement(String localName, String prefix, String uri)
Creates a new SOAPElement object initialized with the specified local name, prefix, and URI and adds the new element to this SOAPElement object.
SOAPElement
addChildElement(Name name)
Creates a new SOAPElement object initialized with the given Name object and adds the new element to this SOAPElement object.
SOAPElement
addChildElement(SOAPElement element)
Add a SOAPElement as a child of this SOAPElement instance.
SOAPElement
addNamespaceDeclaration(String prefix, String uri)
Adds a namespace declaration with the specified prefix and URI to this SOAPElement object.
SOAPElement
addTextNode(String text)
Creates a new Text object initialized with the given String and adds it to this SOAPElement object.
Iterator
getAllAttributes()
Returns an iterator over all of the attribute names in this SOAPElement object.
String
getAttributeValue(Name name)
Returns the value of the attribute with the specified name.
Iterator
getChildElements()
Returns an iterator over all the immediate content of this element.
Iterator
getChildElements(Name name)
Returns an iterator over all the child elements with the specified name.
Name
getElementName()
Returns the name of this SOAPElement object.
String
getEncodingStyle()
Returns the encoding style for this SOAPElement object.
Iterator
getNamespacePrefixes()
Returns an iterator of namespace prefixes.
String
getNamespaceURI(String prefix)
Returns the URI of the namespace that has the given prefix.
Iterator
getVisibleNamespacePrefixes()
Returns an Iterator over the namespace prefix Strings visible to this element.
boolean
removeAttribute(Name name)
Removes the attribute with the specified name.
void
removeContents()
Detaches all children of this SOAPElement.
boolean
removeNamespaceDeclaration(String prefix)
Removes the namespace declaration corresponding to the given prefix.
void
setEncodingStyle(String encodingStyle)
Sets the encoding style for this SOAPElement object to one specified.

Methods inherited from interface javax.xml.soap.Node

detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue

Method Details

addAttribute

public SOAPElement addAttribute(Name name,
                                String value)
            throws SOAPException
Adds an attribute with the specified name and value to this SOAPElement object.

Parameters:
name - a Name object with the name of the attribute
value - a String giving the value of the attribute

Returns:
the SOAPElement object into which the attribute was inserted

Throws:
SOAPException - if there is an error in creating the Attribute


addChildElement

public SOAPElement addChildElement(String localName)
            throws SOAPException
Creates a new SOAPElement object initialized with the given String object and adds the new element to this SOAPElement object.

Parameters:
localName - a String giving the local name for the element

Returns:
the new SOAPElement object that was created

Throws:
SOAPException - if there is an error in creating the SOAPElement object


addChildElement

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 - a String giving the local name for the new element
prefix - a String giving the namespace prefix for the new element

Returns:
the new SOAPElement object that was created

Throws:
SOAPException - if there is an error in creating the SOAPElement object


addChildElement

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 - a String giving the local name for the new element
prefix - a String giving the namespace prefix for the new element
uri - a String giving the URI of the namespace to which the new element belongs

Returns:
the new SOAPElement object that was created

Throws:
SOAPException - if there is an error in creating the SOAPElement object


addChildElement

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.

Parameters:
name - a Name object with the XML name for the new element

Returns:
the new SOAPElement object that was created

Throws:
SOAPException - if there is an error in creating the SOAPElement object


addChildElement

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 SOAPElementFactory. 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 - the SOAPElement to be added as a new child

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

Throws:
SOAPException - if there was an error in adding this element as a child


addNamespaceDeclaration

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 - a String giving the prefix of the namespace
uri - a String giving the prefix of the namespace

Returns:
the SOAPElement object into which this namespace declaration was inserted.

Throws:
SOAPException - if there is an error in creating the namespace


addTextNode

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 - a String object with the textual content to be added

Returns:
the SOAPElement object into which the new Text object was inserted

Throws:
SOAPException - if there is an error in creating the new Text object


getAllAttributes

public Iterator getAllAttributes()
Returns an iterator over all of the attribute names 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:
an iterator over the names of the attributes


getAttributeValue

public String getAttributeValue(Name name)
Returns the value of the attribute with the specified name.

Parameters:
name - a Name object with the name of the attribute

Returns:
a String giving the value of the specified attribute


getChildElements

public Iterator getChildElements()
Returns an iterator over all the immediate content of this element. This includes Text objects as well as SOAPElement objects.

Returns:
an iterator with the content of this SOAPElement object


getChildElements

public Iterator getChildElements(Name name)
Returns an iterator over all the child elements with the specified name.

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

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


getElementName

public Name getElementName()
Returns the name of this SOAPElement object.

Returns:
a Name object with the name of this SOAPElement object


getEncodingStyle

public String getEncodingStyle()
Returns the encoding style for this SOAPElement object.

Returns:
a String giving the encoding style

See Also:
setEncodingStyle(java.lang.String)


getNamespacePrefixes

public Iterator getNamespacePrefixes()
Returns an iterator of namespace prefixes. The iterator can be used to get the namespace prefixes, which can then be passed to the method getNamespaceURI to retrieve the URI of each namespace.

Returns:
an iterator over the namespace prefixes in this SOAPElement object


getNamespaceURI

public String getNamespaceURI(String prefix)
Returns the URI of the namespace that has the given prefix.

Parameters:
prefix - a String giving the prefix of the namespace for which to search

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


getVisibleNamespacePrefixes

public Iterator 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:
an iterator over the namespace prefixes are within scope of this SOAPElement object


removeAttribute

public boolean removeAttribute(Name name)
Removes the attribute with the specified name.

Parameters:
name - the Name object with the name of the attribute to be removed

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


removeContents

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 reparation for sending a fault when an error condition is detected. It is also useful for recycling portions of a document within a SOAP message.


removeNamespaceDeclaration

public boolean removeNamespaceDeclaration(String prefix)
Removes the namespace declaration corresponding to the given prefix.

Parameters:
prefix - a String giving the prefix for which to search

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


setEncodingStyle

public void setEncodingStyle(String encodingStyle)
            throws SOAPException
Sets the encoding style for this SOAPElement object to one specified.

Parameters:
encodingStyle - a String giving the encoding style

See Also:
getEncodingStyle()


Copyright B) 2005 Apache Web Services Project. All Rights Reserved.