Package org.apache.axis.message
Class SOAPDocumentImpl
- java.lang.Object
-
- org.apache.axis.message.SOAPDocumentImpl
-
- All Implemented Interfaces:
java.io.Serializable
,org.w3c.dom.Document
,org.w3c.dom.Node
public class SOAPDocumentImpl extends java.lang.Object implements org.w3c.dom.Document, java.io.Serializable
SOAPDcoumentImpl implements the Document API for SOAPPART. At the moment, it again delgate the XERCES DOM Implementation Here is my argument on it: I guess that there is 3 way to implement this. - fully implement the DOM API here myself. => This is too much and duplicated work. - extends XERCES Implementation => this makes we are fixed to one Implementation - choose delgate depends on the user's parser preference => This is the practically best solution I have now- Author:
- Heejune Ahn (cityboy@tmax.co.kr)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected org.w3c.dom.Document
delegate
protected SOAPPart
soapPart
-
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 SOAPDocumentImpl(SOAPPart sp)
Construct the Document
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.w3c.dom.Node
adoptNode(org.w3c.dom.Node source)
org.w3c.dom.Node
appendChild(org.w3c.dom.Node newChild)
org.w3c.dom.Node
cloneNode(boolean deep)
short
compareDocumentPosition(org.w3c.dom.Node other)
org.w3c.dom.Attr
createAttribute(java.lang.String name)
org.w3c.dom.Attr
createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
Attribute is not particularly dealt with in SAAJ.org.w3c.dom.CDATASection
createCDATASection(java.lang.String data)
Creates aCDATASection
node whose value is the specified string.org.w3c.dom.Comment
createComment(java.lang.String data)
Creates aComment
node given the specified string.org.w3c.dom.DocumentFragment
createDocumentFragment()
Creates an emptyDocumentFragment
object.org.w3c.dom.Element
createElement(java.lang.String tagName)
based on the tagName, we will make different kind SOAP Elements Instance Is really we can determine the Type by the Tagname???org.w3c.dom.Element
createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
Return SOAPElements (what if they want SOAPEnvelope or Header/Body?)org.w3c.dom.EntityReference
createEntityReference(java.lang.String name)
org.w3c.dom.ProcessingInstruction
createProcessingInstruction(java.lang.String target, java.lang.String data)
Creates aProcessingInstruction
node given the specified name and data strings.org.w3c.dom.Text
createTextNode(java.lang.String data)
Creates aText
node given the specified string.org.w3c.dom.NamedNodeMap
getAttributes()
java.lang.String
getBaseURI()
DOM Level 3 stubsorg.w3c.dom.NodeList
getChildNodes()
org.w3c.dom.DocumentType
getDoctype()
org.w3c.dom.Element
getDocumentElement()
should not be called, the method will be handled in SOAPPartjava.lang.String
getDocumentURI()
org.w3c.dom.DOMConfiguration
getDomConfig()
org.w3c.dom.Element
getElementById(java.lang.String elementId)
Returns theElement
whoseID
is given byelementId
.org.w3c.dom.NodeList
getElementsByTagName(java.lang.String localName)
search the SOAPPart in order of SOAPHeader and SOAPBody for the requested Element nameorg.w3c.dom.NodeList
getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
search the SOAPPart in order of SOAPHeader and SOAPBody for the requested Element namejava.lang.Object
getFeature(java.lang.String feature, java.lang.String version)
org.w3c.dom.Node
getFirstChild()
Do we have to count the Attributes as node ????org.w3c.dom.DOMImplementation
getImplementation()
java.lang.String
getInputEncoding()
org.w3c.dom.Node
getLastChild()
java.lang.String
getLocalName()
java.lang.String
getNamespaceURI()
org.w3c.dom.Node
getNextSibling()
java.lang.String
getNodeName()
Node Implementationshort
getNodeType()
override it in sub-classesjava.lang.String
getNodeValue()
org.w3c.dom.Document
getOwnerDocument()
we have to have a link to them...org.w3c.dom.Node
getParentNode()
java.lang.String
getPrefix()
org.w3c.dom.Node
getPreviousSibling()
boolean
getStrictErrorChecking()
java.lang.String
getTextContent()
java.lang.Object
getUserData(java.lang.String key)
java.lang.String
getXmlEncoding()
boolean
getXmlStandalone()
java.lang.String
getXmlVersion()
boolean
hasAttributes()
boolean
hasChildNodes()
org.w3c.dom.Node
importNode(org.w3c.dom.Node importedNode, boolean deep)
org.w3c.dom.Node
insertBefore(org.w3c.dom.Node newChild, org.w3c.dom.Node refChild)
boolean
isDefaultNamespace(java.lang.String namespaceURI)
boolean
isEqualNode(org.w3c.dom.Node arg)
boolean
isSameNode(org.w3c.dom.Node other)
boolean
isSupported(java.lang.String feature, java.lang.String version)
java.lang.String
lookupNamespaceURI(java.lang.String prefix)
java.lang.String
lookupPrefix(java.lang.String namespaceURI)
void
normalize()
void
normalizeDocument()
org.w3c.dom.Node
removeChild(org.w3c.dom.Node oldChild)
org.w3c.dom.Node
renameNode(org.w3c.dom.Node n, java.lang.String namespaceURI, java.lang.String qualifiedName)
org.w3c.dom.Node
replaceChild(org.w3c.dom.Node newChild, org.w3c.dom.Node oldChild)
void
setDocumentURI(java.lang.String documentURI)
void
setNamespaceURI(java.lang.String nsURI)
void
setNodeValue(java.lang.String nodeValue)
void
setPrefix(java.lang.String prefix)
void
setStrictErrorChecking(boolean strictErrorChecking)
void
setTextContent(java.lang.String textContent)
java.lang.Object
setUserData(java.lang.String key, java.lang.Object data, org.w3c.dom.UserDataHandler handler)
void
setXmlStandalone(boolean xmlStandalone)
void
setXmlVersion(java.lang.String xmlVersion)
-
-
-
Field Detail
-
delegate
protected org.w3c.dom.Document delegate
-
soapPart
protected SOAPPart soapPart
-
-
Constructor Detail
-
SOAPDocumentImpl
public SOAPDocumentImpl(SOAPPart sp)
Construct the Document- Parameters:
sp
- the soap part
-
-
Method Detail
-
getDoctype
public org.w3c.dom.DocumentType getDoctype()
- Specified by:
getDoctype
in interfaceorg.w3c.dom.Document
- Returns:
-
getImplementation
public org.w3c.dom.DOMImplementation getImplementation()
- Specified by:
getImplementation
in interfaceorg.w3c.dom.Document
-
getDocumentElement
public org.w3c.dom.Element getDocumentElement()
should not be called, the method will be handled in SOAPPart- Specified by:
getDocumentElement
in interfaceorg.w3c.dom.Document
- Returns:
-
createElement
public org.w3c.dom.Element createElement(java.lang.String tagName) throws org.w3c.dom.DOMException
based on the tagName, we will make different kind SOAP Elements Instance Is really we can determine the Type by the Tagname???- Specified by:
createElement
in interfaceorg.w3c.dom.Document
- Parameters:
tagName
-- Returns:
- Throws:
org.w3c.dom.DOMException
-
createDocumentFragment
public org.w3c.dom.DocumentFragment createDocumentFragment()
Creates an emptyDocumentFragment
object. @todo not implemented yet- Specified by:
createDocumentFragment
in interfaceorg.w3c.dom.Document
- Returns:
- A new
DocumentFragment
.
-
createTextNode
public org.w3c.dom.Text createTextNode(java.lang.String data)
Creates aText
node given the specified string.- Specified by:
createTextNode
in interfaceorg.w3c.dom.Document
- Parameters:
data
- The data for the node.- Returns:
- The new
Text
object.
-
createComment
public org.w3c.dom.Comment createComment(java.lang.String data)
Creates aComment
node given the specified string.- Specified by:
createComment
in interfaceorg.w3c.dom.Document
- Parameters:
data
- The data for the node.- Returns:
- The new
Comment
object.
-
createCDATASection
public org.w3c.dom.CDATASection createCDATASection(java.lang.String data) throws org.w3c.dom.DOMException
Creates aCDATASection
node whose value is the specified string.- Specified by:
createCDATASection
in interfaceorg.w3c.dom.Document
- Parameters:
data
- The data for theCDATASection
contents.- Returns:
- The new
CDATASection
object. - Throws:
org.w3c.dom.DOMException
- NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
-
createProcessingInstruction
public org.w3c.dom.ProcessingInstruction createProcessingInstruction(java.lang.String target, java.lang.String data) throws org.w3c.dom.DOMException
Creates aProcessingInstruction
node given the specified name and data strings.- Specified by:
createProcessingInstruction
in interfaceorg.w3c.dom.Document
- Parameters:
target
- The target part of the processing instruction.data
- The data for the node.- Returns:
- The new
ProcessingInstruction
object. - Throws:
org.w3c.dom.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 org.w3c.dom.Attr createAttribute(java.lang.String name) throws org.w3c.dom.DOMException
- Specified by:
createAttribute
in interfaceorg.w3c.dom.Document
- Throws:
org.w3c.dom.DOMException
-
createEntityReference
public org.w3c.dom.EntityReference createEntityReference(java.lang.String name) throws org.w3c.dom.DOMException
- Specified by:
createEntityReference
in interfaceorg.w3c.dom.Document
- Parameters:
name
-- Returns:
- Throws:
org.w3c.dom.DOMException
-
importNode
public org.w3c.dom.Node importNode(org.w3c.dom.Node importedNode, boolean deep) throws org.w3c.dom.DOMException
- Specified by:
importNode
in interfaceorg.w3c.dom.Document
- Throws:
org.w3c.dom.DOMException
-
createElementNS
public org.w3c.dom.Element createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName) throws org.w3c.dom.DOMException
Return SOAPElements (what if they want SOAPEnvelope or Header/Body?)- Specified by:
createElementNS
in interfaceorg.w3c.dom.Document
- Parameters:
namespaceURI
-qualifiedName
-- Returns:
- Throws:
org.w3c.dom.DOMException
-
createAttributeNS
public org.w3c.dom.Attr createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName) throws org.w3c.dom.DOMException
Attribute is not particularly dealt with in SAAJ.- Specified by:
createAttributeNS
in interfaceorg.w3c.dom.Document
- Throws:
org.w3c.dom.DOMException
-
getElementsByTagNameNS
public org.w3c.dom.NodeList getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
search the SOAPPart in order of SOAPHeader and SOAPBody for the requested Element name- Specified by:
getElementsByTagNameNS
in interfaceorg.w3c.dom.Document
-
getElementsByTagName
public org.w3c.dom.NodeList getElementsByTagName(java.lang.String localName)
search the SOAPPart in order of SOAPHeader and SOAPBody for the requested Element name- Specified by:
getElementsByTagName
in interfaceorg.w3c.dom.Document
-
getElementById
public org.w3c.dom.Element getElementById(java.lang.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
.- Specified by:
getElementById
in interfaceorg.w3c.dom.Document
- Parameters:
elementId
- The uniqueid
value for an element.- Returns:
- The matching element.
- Since:
- DOM Level 2
-
getNodeName
public java.lang.String getNodeName()
Node Implementation- Specified by:
getNodeName
in interfaceorg.w3c.dom.Node
-
getNodeValue
public java.lang.String getNodeValue() throws org.w3c.dom.DOMException
- Specified by:
getNodeValue
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
setNodeValue
public void setNodeValue(java.lang.String nodeValue) throws org.w3c.dom.DOMException
- Specified by:
setNodeValue
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
getNodeType
public short getNodeType()
override it in sub-classes- Specified by:
getNodeType
in interfaceorg.w3c.dom.Node
- Returns:
-
getParentNode
public org.w3c.dom.Node getParentNode()
- Specified by:
getParentNode
in interfaceorg.w3c.dom.Node
-
getChildNodes
public org.w3c.dom.NodeList getChildNodes()
- Specified by:
getChildNodes
in interfaceorg.w3c.dom.Node
-
getFirstChild
public org.w3c.dom.Node getFirstChild()
Do we have to count the Attributes as node ????- Specified by:
getFirstChild
in interfaceorg.w3c.dom.Node
- Returns:
-
getLastChild
public org.w3c.dom.Node getLastChild()
- Specified by:
getLastChild
in interfaceorg.w3c.dom.Node
- Returns:
-
getPreviousSibling
public org.w3c.dom.Node getPreviousSibling()
- Specified by:
getPreviousSibling
in interfaceorg.w3c.dom.Node
-
getNextSibling
public org.w3c.dom.Node getNextSibling()
- Specified by:
getNextSibling
in interfaceorg.w3c.dom.Node
-
getAttributes
public org.w3c.dom.NamedNodeMap getAttributes()
- Specified by:
getAttributes
in interfaceorg.w3c.dom.Node
-
getOwnerDocument
public org.w3c.dom.Document getOwnerDocument()
we have to have a link to them...- Specified by:
getOwnerDocument
in interfaceorg.w3c.dom.Node
-
insertBefore
public org.w3c.dom.Node insertBefore(org.w3c.dom.Node newChild, org.w3c.dom.Node refChild) throws org.w3c.dom.DOMException
- Specified by:
insertBefore
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
replaceChild
public org.w3c.dom.Node replaceChild(org.w3c.dom.Node newChild, org.w3c.dom.Node oldChild) throws org.w3c.dom.DOMException
- Specified by:
replaceChild
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
removeChild
public org.w3c.dom.Node removeChild(org.w3c.dom.Node oldChild) throws org.w3c.dom.DOMException
- Specified by:
removeChild
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
appendChild
public org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild) throws org.w3c.dom.DOMException
- Specified by:
appendChild
in interfaceorg.w3c.dom.Node
- Throws:
org.w3c.dom.DOMException
-
hasChildNodes
public boolean hasChildNodes()
- Specified by:
hasChildNodes
in interfaceorg.w3c.dom.Node
-
cloneNode
public org.w3c.dom.Node cloneNode(boolean deep)
- Specified by:
cloneNode
in interfaceorg.w3c.dom.Node
-
normalize
public void normalize()
- Specified by:
normalize
in interfaceorg.w3c.dom.Node
-
isSupported
public boolean isSupported(java.lang.String feature, java.lang.String version)
- Specified by:
isSupported
in interfaceorg.w3c.dom.Node
-
getPrefix
public java.lang.String getPrefix()
- Specified by:
getPrefix
in interfaceorg.w3c.dom.Node
-
setPrefix
public void setPrefix(java.lang.String prefix)
- Specified by:
setPrefix
in interfaceorg.w3c.dom.Node
-
getNamespaceURI
public java.lang.String getNamespaceURI()
- Specified by:
getNamespaceURI
in interfaceorg.w3c.dom.Node
-
setNamespaceURI
public void setNamespaceURI(java.lang.String nsURI)
-
getLocalName
public java.lang.String getLocalName()
- Specified by:
getLocalName
in interfaceorg.w3c.dom.Node
-
hasAttributes
public boolean hasAttributes()
- Specified by:
hasAttributes
in interfaceorg.w3c.dom.Node
-
getBaseURI
public java.lang.String getBaseURI()
DOM Level 3 stubs- Specified by:
getBaseURI
in interfaceorg.w3c.dom.Node
-
getXmlStandalone
public boolean getXmlStandalone()
- Specified by:
getXmlStandalone
in interfaceorg.w3c.dom.Document
-
getStrictErrorChecking
public boolean getStrictErrorChecking()
- Specified by:
getStrictErrorChecking
in interfaceorg.w3c.dom.Document
-
setXmlStandalone
public void setXmlStandalone(boolean xmlStandalone)
- Specified by:
setXmlStandalone
in interfaceorg.w3c.dom.Document
-
renameNode
public org.w3c.dom.Node renameNode(org.w3c.dom.Node n, java.lang.String namespaceURI, java.lang.String qualifiedName)
- Specified by:
renameNode
in interfaceorg.w3c.dom.Document
-
setStrictErrorChecking
public void setStrictErrorChecking(boolean strictErrorChecking)
- Specified by:
setStrictErrorChecking
in interfaceorg.w3c.dom.Document
-
setUserData
public java.lang.Object setUserData(java.lang.String key, java.lang.Object data, org.w3c.dom.UserDataHandler handler)
- Specified by:
setUserData
in interfaceorg.w3c.dom.Node
-
getInputEncoding
public java.lang.String getInputEncoding()
- Specified by:
getInputEncoding
in interfaceorg.w3c.dom.Document
-
getXmlEncoding
public java.lang.String getXmlEncoding()
- Specified by:
getXmlEncoding
in interfaceorg.w3c.dom.Document
-
setTextContent
public void setTextContent(java.lang.String textContent)
- Specified by:
setTextContent
in interfaceorg.w3c.dom.Node
-
isSameNode
public boolean isSameNode(org.w3c.dom.Node other)
- Specified by:
isSameNode
in interfaceorg.w3c.dom.Node
-
getDocumentURI
public java.lang.String getDocumentURI()
- Specified by:
getDocumentURI
in interfaceorg.w3c.dom.Document
-
setDocumentURI
public void setDocumentURI(java.lang.String documentURI)
- Specified by:
setDocumentURI
in interfaceorg.w3c.dom.Document
-
getFeature
public java.lang.Object getFeature(java.lang.String feature, java.lang.String version)
- Specified by:
getFeature
in interfaceorg.w3c.dom.Node
-
adoptNode
public org.w3c.dom.Node adoptNode(org.w3c.dom.Node source)
- Specified by:
adoptNode
in interfaceorg.w3c.dom.Document
-
isDefaultNamespace
public boolean isDefaultNamespace(java.lang.String namespaceURI)
- Specified by:
isDefaultNamespace
in interfaceorg.w3c.dom.Node
-
isEqualNode
public boolean isEqualNode(org.w3c.dom.Node arg)
- Specified by:
isEqualNode
in interfaceorg.w3c.dom.Node
-
setXmlVersion
public void setXmlVersion(java.lang.String xmlVersion)
- Specified by:
setXmlVersion
in interfaceorg.w3c.dom.Document
-
getXmlVersion
public java.lang.String getXmlVersion()
- Specified by:
getXmlVersion
in interfaceorg.w3c.dom.Document
-
lookupPrefix
public java.lang.String lookupPrefix(java.lang.String namespaceURI)
- Specified by:
lookupPrefix
in interfaceorg.w3c.dom.Node
-
getUserData
public java.lang.Object getUserData(java.lang.String key)
- Specified by:
getUserData
in interfaceorg.w3c.dom.Node
-
getTextContent
public java.lang.String getTextContent()
- Specified by:
getTextContent
in interfaceorg.w3c.dom.Node
-
normalizeDocument
public void normalizeDocument()
- Specified by:
normalizeDocument
in interfaceorg.w3c.dom.Document
-
lookupNamespaceURI
public java.lang.String lookupNamespaceURI(java.lang.String prefix)
- Specified by:
lookupNamespaceURI
in interfaceorg.w3c.dom.Node
-
getDomConfig
public org.w3c.dom.DOMConfiguration getDomConfig()
- Specified by:
getDomConfig
in interfaceorg.w3c.dom.Document
-
compareDocumentPosition
public short compareDocumentPosition(org.w3c.dom.Node other)
- Specified by:
compareDocumentPosition
in interfaceorg.w3c.dom.Node
-
-