Package org.apache.axis2.saaj
Class SOAPPartImpl
- java.lang.Object
-
- javax.xml.soap.SOAPPart
-
- org.apache.axis2.saaj.SOAPPartImpl
-
-
Field Summary
-
Fields inherited from interface 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
-
-
Constructor Summary
Constructors Constructor Description SOAPPartImpl(SOAPMessageImpl parentSoapMsg, InputStream inputStream, MimeHeaders mimeHeaders, Attachments attachments)
Construct a SOAP part from the given input stream.SOAPPartImpl(SOAPMessageImpl parentSoapMsg, SOAPEnvelopeImpl soapEnvelope)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addMimeHeader(String header, String value)
Creates aMimeHeader
object with the specified name and value and adds it to thisSOAPPart
object.Node
adoptNode(Node source)
Node
appendChild(Node newChild)
Adds the nodenewChild
to the end of the list of children of this node.Node
cloneNode(boolean deep)
Returns a duplicate of this node, i.e., serves as a generic copy constructor for nodes.short
compareDocumentPosition(Node node)
Attr
createAttribute(String name)
Creates anAttr
of the given name.Attr
createAttributeNS(String namespaceURI, String qualifiedName)
Creates an attribute of the given qualified name and namespace URI.CDATASection
createCDATASection(String data)
Creates aCDATASection
node whose value is the specified string.Comment
createComment(String data)
Creates aCDATASection
node whose value is the specified string.DocumentFragment
createDocumentFragment()
Creates an emptyDocumentFragment
object.Element
createElement(String tagName)
Creates an element of the type specified.Element
createElementNS(String namespaceURI, String qualifiedName)
Creates an element of the given qualified name and namespace URI.EntityReference
createEntityReference(String name)
Creates anEntityReference
object.ProcessingInstruction
createProcessingInstruction(String target, String data)
Creates aProcessingInstruction
node given the specified name and data strings.Text
createTextNode(String data)
Creates aText
node given the specified string.void
detachNode()
Iterator
getAllMimeHeaders()
Retrieves all the headers for thisSOAPPart
object as an iterator over theMimeHeader
objects.NamedNodeMap
getAttributes()
ANamedNodeMap
containing the attributes of this node (if it is anElement
) ornull
otherwise.String
getBaseURI()
NodeList
getChildNodes()
ANodeList
that contains all children of this node.Source
getContent()
Returns the content of the SOAPEnvelope as a JAXPSource
object.DocumentType
getDoctype()
The Document Type Declaration (seeDocumentType
) associated with this document.Element
getDocumentElement()
This is a convenience attribute that allows direct access to the child node that is the root element of the document.String
getDocumentURI()
DOMConfiguration
getDomConfig()
Element
getElementById(String elementId)
Returns theElement
whoseID
is given byelementId
.NodeList
getElementsByTagName(String tagname)
Returns aNodeList
of all theElements
with a given tag name in the order in which they are encountered in a preorder traversal of theDocument
tree.NodeList
getElementsByTagNameNS(String namespaceURI, String localName)
Returns aNodeList
of all theElements
with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of theDocument
tree.SOAPEnvelope
getEnvelope()
Gets theSOAPEnvelope
object associated with thisSOAPPart
object.Object
getFeature(String feature, String version)
Node
getFirstChild()
The first child of this node.DOMImplementation
getImplementation()
TheDOMImplementation
object that handles this document.String
getInputEncoding()
Node
getLastChild()
The last child of this node.String
getLocalName()
Returns the local part of the qualified name of this node.Iterator
getMatchingMimeHeaders(String[] names)
Retrieves allMimeHeader
objects that match a name in the given array.String[]
getMimeHeader(String name)
Gets all the values of theMimeHeader
object in thisSOAPPart
object that is identified by the givenString
.String
getNamespaceURI()
The namespace URI of this node, ornull
if it is unspecified.Node
getNextSibling()
The node immediately following this node.String
getNodeName()
The name of this node, depending on its type; see the table above.short
getNodeType()
A code representing the type of the underlying object, as defined above.String
getNodeValue()
The value of this node, depending on its type; see the table above.Iterator
getNonMatchingMimeHeaders(String[] names)
Retrieves allMimeHeader
objects whose name does not match a name in the given array.Document
getOwnerDocument()
TheDocument
object associated with this node.SOAPElement
getParentElement()
Node
getParentNode()
The parent of this node.String
getPrefix()
The namespace prefix of this node, ornull
if it is unspecified.Node
getPreviousSibling()
The node immediately preceding this node.SOAPMessage
getSoapMessage()
Obtain the SOAPMessageboolean
getStrictErrorChecking()
String
getTextContent()
Object
getUserData(String key)
String
getValue()
String
getXmlEncoding()
boolean
getXmlStandalone()
String
getXmlVersion()
boolean
hasAttributes()
Returns whether this node (if it is an element) has any attributes.boolean
hasChildNodes()
Returns whether this node has any children.Node
importNode(Node importedNode, boolean deep)
Imports a node from another document to this document.Node
insertBefore(Node newChild, Node refChild)
Inserts the nodenewChild
before the existing child noderefChild
.boolean
isDefaultNamespace(String namespaceURI)
boolean
isEqualNode(Node node)
boolean
isSameNode(Node other)
boolean
isSupported(String feature, String version)
Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.String
lookupNamespaceURI(String prefix)
String
lookupPrefix(String namespaceURI)
void
normalize()
Puts allText
nodes in the full depth of the sub-tree underneath thisNode
, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separatesText
nodes, i.e., there are neither adjacentText
nodes nor emptyText
nodes.void
normalizeDocument()
void
recycleNode()
void
removeAllMimeHeaders()
Removes all theMimeHeader
objects for thisSOAPEnvelope
object.Node
removeChild(Node oldChild)
Removes the child node indicated byoldChild
from the list of children, and returns it.void
removeMimeHeader(String header)
Removes all MIME headers that match the given name.Node
renameNode(Node n, String namespaceURI, String qualifiedName)
Node
replaceChild(Node newChild, Node oldChild)
Replaces the child nodeoldChild
withnewChild
in the list of children, and returns theoldChild
node.void
setContent(Source source)
void
setDocumentURI(String documentURI)
protected void
setMessage(SOAPMessageImpl message)
void
setMimeHeader(String name, String value)
Changes the first header entry that matches the given header name so that its value is the given value, adding a new header with the given name and value if no existing header is a match.void
setNodeValue(String arg0)
The value of this node, depending on its type; see the table above.void
setParentElement(SOAPElement parent)
void
setPrefix(String arg0)
The namespace prefix of this node, ornull
if it is unspecified.void
setStrictErrorChecking(boolean strictErrorChecking)
void
setTextContent(String textContent)
Object
setUserData(String key, Object data, UserDataHandler handler)
void
setValue(String value)
void
setXmlStandalone(boolean xmlStandalone)
void
setXmlVersion(String xmlVersion)
-
Methods inherited from class javax.xml.soap.SOAPPart
getContentId, getContentLocation, setContentId, setContentLocation
-
-
-
-
Constructor Detail
-
SOAPPartImpl
public SOAPPartImpl(SOAPMessageImpl parentSoapMsg, SOAPEnvelopeImpl soapEnvelope)
-
SOAPPartImpl
public SOAPPartImpl(SOAPMessageImpl parentSoapMsg, InputStream inputStream, MimeHeaders mimeHeaders, Attachments attachments) throws SOAPException
Construct a SOAP part from the given input stream. The content type (as provided by the MIME headers) must be SOAP 1.1, SOAP 1.2 or XOP (MTOM). MIME packages (multipart/related) are not supported and should be parsed using {@link SOAPMessageImpl#SOAPMessageImpl(InputStream, MimeHeaders).If the content type is XOP, xop:Include elements will only be replaced if the
attachments
parameter is not null.- Parameters:
parentSoapMsg
- the parent SOAP messageinputStream
- the input stream with the content of the SOAP partmimeHeaders
- the MIME headersattachments
- the set of attachments to be used to substitute xop:Include elements- Throws:
SOAPException
- See Also:
MessageFactoryImpl.setProcessMTOM(boolean)
-
-
Method Detail
-
getSoapMessage
public SOAPMessage getSoapMessage()
Obtain the SOAPMessage- Returns:
- the related SOAPMessage
-
getEnvelope
public SOAPEnvelope getEnvelope() throws SOAPException
Gets theSOAPEnvelope
object associated with thisSOAPPart
object. Once the SOAP envelope is obtained, it can be used to get its contents.- Specified by:
getEnvelope
in classSOAPPart
- Returns:
- the
SOAPEnvelope
object for thisSOAPPart
object - Throws:
SOAPException
- if there is a SOAP error
-
removeMimeHeader
public void removeMimeHeader(String header)
Removes all MIME headers that match the given name.- Specified by:
removeMimeHeader
in classSOAPPart
- Parameters:
header
- aString
giving the name of the MIME header(s) to be removed
-
removeAllMimeHeaders
public void removeAllMimeHeaders()
Removes all theMimeHeader
objects for thisSOAPEnvelope
object.- Specified by:
removeAllMimeHeaders
in classSOAPPart
-
getMimeHeader
public String[] getMimeHeader(String name)
Gets all the values of theMimeHeader
object in thisSOAPPart
object that is identified by the givenString
.- Specified by:
getMimeHeader
in classSOAPPart
- Parameters:
name
- the name of the header; example: "Content-Type"- Returns:
- a
String
array giving all the values for the specified header - See Also:
setMimeHeader(java.lang.String, java.lang.String)
-
setMimeHeader
public void setMimeHeader(String name, String value)
Changes the first header entry that matches the given header name so that its value is the given value, adding a new header with the given name and value if no existing header is a match. If there is a match, this method clears all existing values for the first header that matches and sets the given value instead. If more than one header has the given name, this method removes all of the matching headers after the first one.Note that RFC822 headers can contain only US-ASCII characters.
- Specified by:
setMimeHeader
in classSOAPPart
- Parameters:
name
- aString
giving the header name for which to searchvalue
- aString
giving the value to be set. This value will be substituted for the current value(s) of the first header that is a match if there is one. If there is no match, this value will be the value for a newMimeHeader
object.- Throws:
IllegalArgumentException
- if there was a problem with the specified mime header name or valueIllegalArgumentException
- if there was a problem with the specified mime header name or value- See Also:
getMimeHeader(java.lang.String)
-
addMimeHeader
public void addMimeHeader(String header, String value)
Creates aMimeHeader
object with the specified name and value and adds it to thisSOAPPart
object. If aMimeHeader
with the specified name already exists, this method adds the specified value to the already existing value(s).Note that RFC822 headers can contain only US-ASCII characters.
- Specified by:
addMimeHeader
in classSOAPPart
- Parameters:
header
- aString
giving the header namevalue
- aString
giving the value to be set or added- Throws:
IllegalArgumentException
- if there was a problem with the specified mime header name or value
-
getAllMimeHeaders
public Iterator getAllMimeHeaders()
Retrieves all the headers for thisSOAPPart
object as an iterator over theMimeHeader
objects.- Specified by:
getAllMimeHeaders
in classSOAPPart
- Returns:
- an
Iterator
object with all of the Mime headers for thisSOAPPart
object
-
getMatchingMimeHeaders
public Iterator getMatchingMimeHeaders(String[] names)
Retrieves allMimeHeader
objects that match a name in the given array.- Specified by:
getMatchingMimeHeaders
in classSOAPPart
- Parameters:
names
- aString
array with the name(s) of the MIME headers to be returned- Returns:
- all of the MIME headers that match one of the names in the given array, returned as
an
Iterator
object
-
getNonMatchingMimeHeaders
public Iterator getNonMatchingMimeHeaders(String[] names)
Retrieves allMimeHeader
objects whose name does not match a name in the given array.- Specified by:
getNonMatchingMimeHeaders
in classSOAPPart
- Parameters:
names
- aString
array with the name(s) of the MIME headers not to be returned- Returns:
- all of the MIME headers in this
SOAPPart
object except those that match one of the names in the given array. The nonmatching MIME headers are returned as anIterator
object.
-
setContent
public void setContent(Source source) throws SOAPException
- Specified by:
setContent
in classSOAPPart
- Throws:
SOAPException
-
getContent
public Source getContent() throws SOAPException
Returns the content of the SOAPEnvelope as a JAXPSource
object.- Specified by:
getContent
in classSOAPPart
- Returns:
- the content as a
javax.xml.transform.Source
object - Throws:
SOAPException
- if the implementation cannot convert the specifiedSource
object- See Also:
setContent(javax.xml.transform.Source)
-
getDoctype
public DocumentType getDoctype()
The Document Type Declaration (seeDocumentType
) associated with this document. For HTML documents as well as XML documents without a document type declaration this returnsnull
. The DOM Level 2 does not support editing the Document Type Declaration.docType
cannot be altered in any way, including through the use of methods inherited from theNode
interface, such asinsertNode
orremoveNode
.
-
getImplementation
public DOMImplementation getImplementation()
TheDOMImplementation
object that handles this document. A DOM application may use objects from multiple implementations.
-
getDocumentElement
public Element getDocumentElement()
This is a convenience attribute that allows direct access to the child node that is the root element of the document. For HTML documents, this is the element with the tagName "HTML".
-
createElement
public Element createElement(String tagName) throws DOMException
Creates an element of the type specified. Note that the instance returned implements theElement
interface, so attributes can be specified directly on the returned object.
In addition, if there are known attributes with default values,Attr
nodes representing them are automatically created and attached to the element.
To create an element with a qualified name and namespace URI, use thecreateElementNS
method.- Parameters:
tagName
- The name of the element type to instantiate. For XML, this is case-sensitive. For HTML, thetagName
parameter may be provided in any case, but it must be mapped to the canonical uppercase form by the DOM implementation.- Returns:
- A new
Element
object with thenodeName
attribute set totagName
, andlocalName
,prefix
, andnamespaceURI
set tonull
. - Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.
-
createDocumentFragment
public DocumentFragment createDocumentFragment()
Creates an emptyDocumentFragment
object.- Returns:
- A new
DocumentFragment
.
-
createTextNode
public Text createTextNode(String data)
Creates aText
node given the specified string.- Parameters:
data
- The data for the node.- Returns:
- The new
Text
object.
-
createComment
public Comment createComment(String data)
Creates aCDATASection
node whose value is the specified string.- Parameters:
data
- The data for theCDATASection
contents.- Returns:
- The new
CDATASection
object. - Throws:
DOMException
- NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
-
createCDATASection
public CDATASection createCDATASection(String data) throws DOMException
Creates aCDATASection
node whose value is the specified string.- Parameters:
data
- The data for theCDATASection
contents.- Returns:
- The new
CDATASection
object. - Throws:
DOMException
- NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
-
createProcessingInstruction
public ProcessingInstruction createProcessingInstruction(String target, String data) throws DOMException
Creates aProcessingInstruction
node given the specified name and data strings.- Parameters:
target
- The target part of the processing instruction.data
- The data for the node.- Returns:
- The new
ProcessingInstruction
object. - Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified target contains an illegal character.
NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
-
createAttribute
public Attr createAttribute(String name) throws DOMException
Creates anAttr
of the given name. Note that theAttr
instance can then be set on anElement
using thesetAttributeNode
method.
To create an attribute with a qualified name and namespace URI, use thecreateAttributeNS
method.- Parameters:
name
- The name of the attribute.- Returns:
- A new
Attr
object with thenodeName
attribute set toname
, andlocalName
,prefix
, andnamespaceURI
set tonull
. The value of the attribute is the empty string. - Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.
-
createEntityReference
public EntityReference createEntityReference(String name) throws DOMException
Creates anEntityReference
object. In addition, if the referenced entity is known, the child list of theEntityReference
node is made the same as that of the correspondingEntity
node.If any descendant of theEntity
node has an unbound namespace prefix, the corresponding descendant of the createdEntityReference
node is also unbound; (itsnamespaceURI
isnull
). The DOM Level 2 does not support any mechanism to resolve namespace prefixes.- Parameters:
name
- The name of the entity to reference.- Returns:
- The new
EntityReference
object. - Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified name contains an illegal character.
NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
-
getElementsByTagName
public NodeList getElementsByTagName(String tagname)
Returns aNodeList
of all theElements
with a given tag name in the order in which they are encountered in a preorder traversal of theDocument
tree.- Parameters:
tagname
- The name of the tag to match on. The special value "*" matches all tags.- Returns:
- A new
NodeList
object containing all the matchedElements
.
-
importNode
public Node importNode(Node importedNode, boolean deep) throws DOMException
Imports a node from another document to this document. The returned node has no parent; (parentNode
isnull
). The source node is not altered or removed from the original document; this method creates a new copy of the source node.
For all nodes, importing a node creates a node object owned by the importing document, with attribute values identical to the source node'snodeName
andnodeType
, plus the attributes related to namespaces (prefix
,localName
, andnamespaceURI
). As in thecloneNode
operation on aNode
, the source node is not altered.
Additional information is copied as appropriate to thenodeType
, attempting to mirror the behavior expected if a fragment of XML or HTML source was copied from one document to another, recognizing that the two documents may have different DTDs in the XML case. The following list describes the specifics for each type of node.- ATTRIBUTE_NODE
- The
ownerElement
attribute is set tonull
and thespecified
flag is set totrue
on the generatedAttr
. The descendants of the sourceAttr
are recursively imported and the resulting nodes reassembled to form the corresponding subtree. Note that thedeep
parameter has no effect onAttr
nodes; they always carry their children with them when imported. - DOCUMENT_FRAGMENT_NODE
- If the
deep
option was set totrue
, the descendants of the source element are recursively imported and the resulting nodes reassembled to form the corresponding subtree. Otherwise, this simply generates an emptyDocumentFragment
. - DOCUMENT_NODE
Document
nodes cannot be imported.- DOCUMENT_TYPE_NODE
DocumentType
nodes cannot be imported.- ELEMENT_NODE
- Specified attribute nodes of the source element are imported, and the generated
Attr
nodes are attached to the generatedElement
. Default attributes are not copied, though if the document being imported into defines default attributes for this element name, those are assigned. If theimportNode
deep
parameter was set totrue
, the descendants of the source element are recursively imported and the resulting nodes reassembled to form the corresponding subtree. - ENTITY_NODE
Entity
nodes can be imported, however in the current release of the DOM theDocumentType
is readonly. Ability to add these imported nodes to aDocumentType
will be considered for addition to a future release of the DOM.On import, thepublicId
,systemId
, andnotationName
attributes are copied. If adeep
import is requested, the descendants of the the sourceEntity
are recursively imported and the resulting nodes reassembled to form the corresponding subtree.- ENTITY_REFERENCE_NODE
- Only the
EntityReference
itself is copied, even if adeep
import is requested, since the source and destination documents might have defined the entity differently. If the document being imported into provides a definition for this entity name, its value is assigned. - NOTATION_NODE
-
Notation
nodes can be imported, however in the current release of the DOM theDocumentType
is readonly. Ability to add these imported nodes to aDocumentType
will be considered for addition to a future release of the DOM.On import, thepublicId
andsystemId
attributes are copied. Note that thedeep
parameter has no effect onNotation
nodes since they never have any children. - PROCESSING_INSTRUCTION_NODE
- The
imported node copies its
target
anddata
values from those of the source node. - TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE
- These three types
of nodes inheriting from
CharacterData
copy theirdata
andlength
attributes from those of the source node.
- Parameters:
importedNode
- The node to import.deep
- Iftrue
, recursively import the subtree under the specified node; iffalse
, import only the node itself, as explained above. This has no effect onAttr
,EntityReference
, andNotation
nodes.- Returns:
- The imported node that belongs to this
Document
. - Throws:
DOMException
- NOT_SUPPORTED_ERR: Raised if the type of node being imported is not supported.- Since:
- DOM Level 2
-
createElementNS
public Element createElementNS(String namespaceURI, String qualifiedName) throws DOMException
Creates an element of the given qualified name and namespace URI.- Parameters:
namespaceURI
- The namespace URI of the element to create.qualifiedName
- The qualified name of the element type to instantiate.- Returns:
- A new
Element
object with the following attributes:Attribute Value Node.nodeName
qualifiedName
Node.namespaceURI
namespaceURI
Node.prefix
prefix, extracted from qualifiedName
, ornull
if there is no prefixNode.localName
local name, extracted from qualifiedName
Element.tagName
qualifiedName
- Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character, per the XML 1.0 specification .
NAMESPACE_ERR: Raised if thequalifiedName
is malformed per the Namespaces in XML specification, if thequalifiedName
has a prefix and thenamespaceURI
isnull
, or if thequalifiedName
has a prefix that is "xml" and thenamespaceURI
is different from " http://www.w3.org/XML/1998/namespace" .
NOT_SUPPORTED_ERR: Always thrown if the current document does not support the"XML"
feature, since namespaces were defined by XML.- Since:
- DOM Level 2
-
createAttributeNS
public Attr createAttributeNS(String namespaceURI, String qualifiedName) throws DOMException
Creates an attribute of the given qualified name and namespace URI.- Parameters:
namespaceURI
- The namespace URI of the attribute to create.qualifiedName
- The qualified name of the attribute to instantiate.- Returns:
- A new
Attr
object with the following attributes:Attribute Value Node.nodeName
qualifiedName Node.namespaceURI
namespaceURI
Node.prefix
prefix, extracted from qualifiedName
, ornull
if there is no prefixNode.localName
local name, extracted from qualifiedName
Attr.name
qualifiedName
Node.nodeValue
the empty string - Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character, per the XML 1.0 specification .
NAMESPACE_ERR: Raised if thequalifiedName
is malformed per the Namespaces in XML specification, if thequalifiedName
has a prefix and thenamespaceURI
isnull
, if thequalifiedName
has a prefix that is "xml" and thenamespaceURI
is different from " http://www.w3.org/XML/1998/namespace", or if thequalifiedName
, or its prefix, is "xmlns" and thenamespaceURI
is different from " http://www.w3.org/2000/xmlns/".
NOT_SUPPORTED_ERR: Always thrown if the current document does not support the"XML"
feature, since namespaces were defined by XML.- Since:
- DOM Level 2
-
getElementsByTagNameNS
public NodeList getElementsByTagNameNS(String namespaceURI, String localName)
Returns aNodeList
of all theElements
with a given local name and namespace URI in the order in which they are encountered in a preorder traversal of theDocument
tree.- Parameters:
namespaceURI
- The namespace URI of the elements to match on. The special value "*" matches all namespaces.localName
- The local name of the elements to match on. The special value "*" matches all local names.- Returns:
- A new
NodeList
object containing all the matchedElements
. - Since:
- DOM Level 2
-
getElementById
public Element getElementById(String elementId)
Returns theElement
whoseID
is given byelementId
. If no such element exists, returnsnull
. Behavior is not defined if more than one element has thisID
. The DOM implementation must have information that says which attributes are of type ID. Attributes with the name "ID" are not of type ID unless so defined. Implementations that do not know whether attributes are of type ID or not are expected to returnnull
.- Parameters:
elementId
- The uniqueid
value for an element.- Returns:
- The matching element.
- Since:
- DOM Level 2
-
getInputEncoding
public String getInputEncoding()
-
getXmlEncoding
public String getXmlEncoding()
-
getXmlStandalone
public boolean getXmlStandalone()
-
setXmlStandalone
public void setXmlStandalone(boolean xmlStandalone) throws DOMException
- Throws:
DOMException
-
getXmlVersion
public String getXmlVersion()
-
setXmlVersion
public void setXmlVersion(String xmlVersion) throws DOMException
- Throws:
DOMException
-
getStrictErrorChecking
public boolean getStrictErrorChecking()
-
setStrictErrorChecking
public void setStrictErrorChecking(boolean strictErrorChecking)
-
getDocumentURI
public String getDocumentURI()
-
setDocumentURI
public void setDocumentURI(String documentURI)
-
adoptNode
public Node adoptNode(Node source) throws DOMException
- Throws:
DOMException
-
getDomConfig
public DOMConfiguration getDomConfig()
-
normalizeDocument
public void normalizeDocument()
-
renameNode
public Node renameNode(Node n, String namespaceURI, String qualifiedName) throws DOMException
- Throws:
DOMException
-
getNodeName
public String getNodeName()
The name of this node, depending on its type; see the table above.
-
getNodeValue
public String getNodeValue() throws DOMException
The value of this node, depending on its type; see the table above. When it is defined to benull
, setting it has no effect.- Throws:
DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.DOMException
- DOMSTRING_SIZE_ERR: Raised when it would return more characters than fit in aDOMString
variable on the implementation platform.
-
setNodeValue
public void setNodeValue(String arg0) throws DOMException
The value of this node, depending on its type; see the table above. When it is defined to benull
, setting it has no effect.- Throws:
DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.DOMException
- DOMSTRING_SIZE_ERR: Raised when it would return more characters than fit in aDOMString
variable on the implementation platform.
-
getNodeType
public short getNodeType()
A code representing the type of the underlying object, as defined above.
-
getParentNode
public Node getParentNode()
The parent of this node. All nodes, exceptAttr
,Document
,DocumentFragment
,Entity
, andNotation
may have a parent. However, if a node has just been created and not yet added to the tree, or if it has been removed from the tree, this isnull
.
-
getChildNodes
public NodeList getChildNodes()
ANodeList
that contains all children of this node. If there are no children, this is aNodeList
containing no nodes.
-
getFirstChild
public Node getFirstChild()
The first child of this node. If there is no such node, this returnsnull
.
-
getLastChild
public Node getLastChild()
The last child of this node. If there is no such node, this returnsnull
.
-
getPreviousSibling
public Node getPreviousSibling()
The node immediately preceding this node. If there is no such node, this returnsnull
.
-
getNextSibling
public Node getNextSibling()
The node immediately following this node. If there is no such node, this returnsnull
.
-
getAttributes
public NamedNodeMap getAttributes()
ANamedNodeMap
containing the attributes of this node (if it is anElement
) ornull
otherwise.
-
getOwnerDocument
public Document getOwnerDocument()
TheDocument
object associated with this node. This is also theDocument
object used to create new nodes. When this node is aDocument
or aDocumentType
which is not used with anyDocument
yet, this isnull
.
-
insertBefore
public Node insertBefore(Node newChild, Node refChild) throws DOMException
Inserts the nodenewChild
before the existing child noderefChild
. IfrefChild
isnull
, insertnewChild
at the end of the list of children.
IfnewChild
is aDocumentFragment
object, all of its children are inserted, in the same order, beforerefChild
. If thenewChild
is already in the tree, it is first removed.- Parameters:
newChild
- The node to insert.refChild
- The reference node, i.e., the node before which the new node must be inserted.- Returns:
- The node being inserted.
- Throws:
DOMException
- HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of thenewChild
node, or if the node to insert is one of this node's ancestors or this node itself.
WRONG_DOCUMENT_ERR: Raised ifnewChild
was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or if the parent of the node being inserted is readonly.
NOT_FOUND_ERR: Raised ifrefChild
is not a child of this node.
-
replaceChild
public Node replaceChild(Node newChild, Node oldChild) throws DOMException
Replaces the child nodeoldChild
withnewChild
in the list of children, and returns theoldChild
node.
IfnewChild
is aDocumentFragment
object,oldChild
is replaced by all of theDocumentFragment
children, which are inserted in the same order. If thenewChild
is already in the tree, it is first removed.- Parameters:
newChild
- The new node to put in the child list.oldChild
- The node being replaced in the list.- Returns:
- The node replaced.
- Throws:
DOMException
- HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of thenewChild
node, or if the node to put in is one of this node's ancestors or this node itself.
WRONG_DOCUMENT_ERR: Raised ifnewChild
was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node or the parent of the new node is readonly.
NOT_FOUND_ERR: Raised ifoldChild
is not a child of this node.
-
removeChild
public Node removeChild(Node oldChild) throws DOMException
Removes the child node indicated byoldChild
from the list of children, and returns it.- Parameters:
oldChild
- The node being removed.- Returns:
- The node removed.
- Throws:
DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NOT_FOUND_ERR: Raised ifoldChild
is not a child of this node.
-
appendChild
public Node appendChild(Node newChild) throws DOMException
Adds the nodenewChild
to the end of the list of children of this node. If thenewChild
is already in the tree, it is first removed.- Parameters:
newChild
- The node to add.If it is aDocumentFragment
object, the entire contents of the document fragment are moved into the child list of this node- Returns:
- The node added.
- Throws:
DOMException
- HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of thenewChild
node, or if the node to append is one of this node's ancestors or this node itself.
WRONG_DOCUMENT_ERR: Raised ifnewChild
was created from a different document than the one that created this node.
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or if the previous parent of the node being inserted is readonly.
-
hasChildNodes
public boolean hasChildNodes()
Returns whether this node has any children.- Returns:
true
if this node has any children,false
otherwise.
-
cloneNode
public Node cloneNode(boolean deep)
Returns a duplicate of this node, i.e., serves as a generic copy constructor for nodes. The duplicate node has no parent; (parentNode
isnull
.).
Cloning anElement
copies all attributes and their values, including those generated by the XML processor to represent defaulted attributes, but this method does not copy any text it contains unless it is a deep clone, since the text is contained in a childText
node. Cloning anAttribute
directly, as opposed to be cloned as part of anElement
cloning operation, returns a specified attribute (specified
istrue
). Cloning any other type of node simply returns a copy of this node.
Note that cloning an immutable subtree results in a mutable copy, but the children of anEntityReference
clone are readonly . In addition, clones of unspecifiedAttr
nodes are specified. And, cloningDocument
,DocumentType
,Entity
, andNotation
nodes is implementation dependent.- Parameters:
deep
- Iftrue
, recursively clone the subtree under the specified node; iffalse
, clone only the node itself (and its attributes, if it is anElement
).- Returns:
- The duplicate node.
-
normalize
public void normalize()
Puts allText
nodes in the full depth of the sub-tree underneath thisNode
, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separatesText
nodes, i.e., there are neither adjacentText
nodes nor emptyText
nodes. This can be used to ensure that the DOM view of a document is the same as if it were saved and re-loaded, and is useful when operations (such as XPointer lookups) that depend on a particular document tree structure are to be used.In cases where the document containsCDATASections
, the normalize operation alone may not be sufficient, since XPointers do not differentiate betweenText
nodes andCDATASection
nodes.
-
isSupported
public boolean isSupported(String feature, String version)
Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.- Parameters:
feature
- The name of the feature to test. This is the same name which can be passed to the methodhasFeature
onDOMImplementation
.version
- This is the version number of the feature to test. In Level 2, version 1, this is the string "2.0". If the version is not specified, supporting any version of the feature will cause the method to returntrue
.- Returns:
- Returns
true
if the specified feature is supported on this node,false
otherwise. - Since:
- DOM Level 2
-
getNamespaceURI
public String getNamespaceURI()
The namespace URI of this node, ornull
if it is unspecified.
This is not a computed value that is the result of a namespace lookup based on an examination of the namespace declarations in scope. It is merely the namespace URI given at creation time.
For nodes of any type other thanELEMENT_NODE
andATTRIBUTE_NODE
and nodes created with a DOM Level 1 method, such ascreateElement
from theDocument
interface, this is alwaysnull
.Per the Namespaces in XML Specification an attribute does not inherit its namespace from the element it is attached to. If an attribute is not explicitly given a namespace, it simply has no namespace.- Since:
- DOM Level 2
-
getPrefix
public String getPrefix()
The namespace prefix of this node, ornull
if it is unspecified.
Note that setting this attribute, when permitted, changes thenodeName
attribute, which holds the qualified name, as well as thetagName
andname
attributes of theElement
andAttr
interfaces, when applicable.
Note also that changing the prefix of an attribute that is known to have a default value, does not make a new attribute with the default value and the original prefix appear, since thenamespaceURI
andlocalName
do not change.
For nodes of any type other thanELEMENT_NODE
andATTRIBUTE_NODE
and nodes created with a DOM Level 1 method, such ascreateElement
from theDocument
interface, this is alwaysnull
.- Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified prefix contains an illegal character, per the XML 1.0 specification .
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NAMESPACE_ERR: Raised if the specifiedprefix
is malformed per the Namespaces in XML specification, if thenamespaceURI
of this node isnull
, if the specified prefix is "xml" and thenamespaceURI
of this node is different from "http://www.w3.org/XML/1998/namespace", if this node is an attribute and the specified prefix is "xmlns" and thenamespaceURI
of this node is different from " http://www.w3.org/2000/xmlns/", or if this node is an attribute and thequalifiedName
of this node is "xmlns" .- Since:
- DOM Level 2
-
setPrefix
public void setPrefix(String arg0) throws DOMException
The namespace prefix of this node, ornull
if it is unspecified.
Note that setting this attribute, when permitted, changes thenodeName
attribute, which holds the qualified name, as well as thetagName
andname
attributes of theElement
andAttr
interfaces, when applicable.
Note also that changing the prefix of an attribute that is known to have a default value, does not make a new attribute with the default value and the original prefix appear, since thenamespaceURI
andlocalName
do not change.
For nodes of any type other thanELEMENT_NODE
andATTRIBUTE_NODE
and nodes created with a DOM Level 1 method, such ascreateElement
from theDocument
interface, this is alwaysnull
.- Throws:
DOMException
- INVALID_CHARACTER_ERR: Raised if the specified prefix contains an illegal character, per the XML 1.0 specification .
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NAMESPACE_ERR: Raised if the specifiedprefix
is malformed per the Namespaces in XML specification, if thenamespaceURI
of this node isnull
, if the specified prefix is "xml" and thenamespaceURI
of this node is different from "http://www.w3.org/XML/1998/namespace", if this node is an attribute and the specified prefix is "xmlns" and thenamespaceURI
of this node is different from " http://www.w3.org/2000/xmlns/", or if this node is an attribute and thequalifiedName
of this node is "xmlns" .- Since:
- DOM Level 2
-
getLocalName
public String getLocalName()
Returns the local part of the qualified name of this node.
For nodes of any type other thanELEMENT_NODE
andATTRIBUTE_NODE
and nodes created with a DOM Level 1 method, such ascreateElement
from theDocument
interface, this is alwaysnull
.- Since:
- DOM Level 2
-
hasAttributes
public boolean hasAttributes()
Returns whether this node (if it is an element) has any attributes.- Returns:
true
if this node has any attributes,false
otherwise.- Since:
- DOM Level 2
-
setMessage
protected void setMessage(SOAPMessageImpl message)
-
getBaseURI
public String getBaseURI()
-
compareDocumentPosition
public short compareDocumentPosition(Node node) throws DOMException
- Throws:
DOMException
-
getTextContent
public String getTextContent() throws DOMException
- Throws:
DOMException
-
setTextContent
public void setTextContent(String textContent) throws DOMException
- Throws:
DOMException
-
isSameNode
public boolean isSameNode(Node other)
-
isDefaultNamespace
public boolean isDefaultNamespace(String namespaceURI)
-
isEqualNode
public boolean isEqualNode(Node node)
-
setUserData
public Object setUserData(String key, Object data, UserDataHandler handler)
-
getValue
public String getValue()
-
setParentElement
public void setParentElement(SOAPElement parent) throws SOAPException
- Throws:
SOAPException
-
getParentElement
public SOAPElement getParentElement()
-
detachNode
public void detachNode()
-
recycleNode
public void recycleNode()
-
setValue
public void setValue(String value)
-
-