Package org.apache.axis.message
Class SOAPEnvelope
- java.lang.Object
-
- org.apache.axis.message.NodeImpl
-
- org.apache.axis.message.MessageElement
-
- org.apache.axis.message.SOAPEnvelope
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Node
,SOAPElement
,SOAPEnvelope
,org.w3c.dom.Element
,org.w3c.dom.Node
,org.w3c.dom.NodeList
public class SOAPEnvelope extends MessageElement implements SOAPEnvelope
Implementation of a SOAP Envelope- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.axis.message.MessageElement
MessageElement.QNameAttr
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.commons.logging.Log
log
java.lang.String
messageType
java.util.Vector
trailers
-
Fields inherited from class org.apache.axis.message.MessageElement
_isRoot, context, encodingStyle, endEventIndex, fixupDeserializer, href, id, message, namespaces, qNameAttrs, recorder, startContentsIndex, startEventIndex, typeQName
-
Fields inherited from class org.apache.axis.message.NodeImpl
_isDirty, attributes, children, document, name, namespaceURI, parent, prefix, textRep
-
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 SOAPEnvelope()
SOAPEnvelope(boolean registerPrefixes, SOAPConstants soapConstants)
SOAPEnvelope(boolean registerPrefixes, SOAPConstants soapConstants, SchemaVersion schemaVersion)
SOAPEnvelope(java.io.InputStream input)
SOAPEnvelope(SOAPConstants soapConstants)
SOAPEnvelope(SOAPConstants soapConstants, SchemaVersion schemaVersion)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SOAPBody
addBody()
Add a soap body if one does not existvoid
addBodyElement(SOAPBodyElement element)
Add a SOAP Body ElementSOAPHeader
addHeader()
Add a soap header if one does not existvoid
addHeader(SOAPHeaderElement hdr)
Add a HeaderElementvoid
addTrailer(MessageElement element)
Add an element to the trailerprotected void
childDeepCloned(NodeImpl oldNode, NodeImpl newNode)
void
clearBody()
clear the elements in the soap bodyorg.w3c.dom.Node
cloneNode(boolean deep)
Returns a duplicate of this node, i.e., serves as a generic copy constructor for nodes.Name
createName(java.lang.String localName)
create a Name given the local partName
createName(java.lang.String localName, java.lang.String prefix, java.lang.String uri)
Create a name given local part, prefix and uriSOAPBody
getBody()
Get the soap bodySOAPBodyElement
getBodyByName(java.lang.String namespace, java.lang.String localPart)
Get a body element given its namejava.util.Vector
getBodyElements()
Get all the BodyElement's in the soap bodySOAPBodyElement
getFirstBody()
Get the first BodyElement in the SOAP BodySOAPHeader
getHeader()
Get the soap headerSOAPHeaderElement
getHeaderByName(java.lang.String namespace, java.lang.String localPart)
Get a header by name (always respecting the currently in-scope actors list)SOAPHeaderElement
getHeaderByName(java.lang.String namespace, java.lang.String localPart, boolean accessAllHeaders)
Get a header by name, filtering for headers targeted at this engine depending on the accessAllHeaders parameter.java.util.Vector
getHeaders()
Get Headersjava.util.Vector
getHeadersByActor(java.util.ArrayList actors)
Get all the headers targeted at a list of actors.java.util.Enumeration
getHeadersByName(java.lang.String namespace, java.lang.String localPart)
Get an enumeration of header elements given the namespace and localpartjava.util.Enumeration
getHeadersByName(java.lang.String namespace, java.lang.String localPart, boolean accessAllHeaders)
Return an Enumeration of headers which match the given namespace and localPart.java.lang.String
getMessageType()
Get the Message Type (REQUEST/RESPONSE)SchemaVersion
getSchemaVersion()
Get the schema version for this envelopeSOAPConstants
getSOAPConstants()
Get the soap constants for this envelopejava.util.Vector
getTrailers()
Return trailersboolean
isRecorded()
void
outputImpl(SerializationContext context)
Should make SOAPSerializationException?void
removeBody()
Remove the SOAP Bodyvoid
removeBodyElement(SOAPBodyElement element)
Remove a Body Element from the soap bodyorg.w3c.dom.Node
removeChild(org.w3c.dom.Node oldChild)
Removes the child node indicated byoldChild
from the list of children, and returns it.void
removeHeader(SOAPHeaderElement hdr)
Remove a Header Element from SOAP Headervoid
removeHeaders()
Remove all headersvoid
removeTrailer(MessageElement element)
Remove an element from the trailervoid
setBody(SOAPBody body)
Set the soap bodyvoid
setDirty(boolean dirty)
set the dirty bit.void
setHeader(SOAPHeader hdr)
Set the SOAP Headervoid
setMessageType(java.lang.String messageType)
Set the Message Type (REQUEST/RESPONSE)void
setOwnerDocument(SOAPPart sp)
void
setRecorded(boolean recorded)
void
setSAAJEncodingCompliance(boolean comply)
void
setSchemaVersion(SchemaVersion schemaVersion)
Set the schema version for this envelopevoid
setSoapConstants(SOAPConstants soapConstants)
Set the soap constants for this envelope-
Methods inherited from class org.apache.axis.message.MessageElement
addAttribute, addAttribute, addAttribute, addAttribute, addChild, addChildElement, addChildElement, addChildElement, addChildElement, addChildElement, addMapping, addNamespaceDeclaration, addTextNode, cloning, detachAllChildren, equals, findElement, getAllAttributes, getAsDocument, getAsDOM, getAsString, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributesEx, getAttributeValue, getAttributeValue, getChildElement, getChildElements, getChildElements, getChildElements, getChildren, getCompleteAttributes, getDeserializationContext, getElementName, getElementsByTagName, getElementsByTagNameNS, getElementsNS, getEncodingStyle, getEnvelope, getFixupDeserializer, getHref, getID, getLength, getName, getNamespacePrefixes, getNamespaceURI, getObjectValue, getObjectValue, getOwnerDocument, getPrefix, getQName, getRealElement, getRecorder, getTagName, getType, getValue, getValueAsType, getValueAsType, getValueDOM, getVisibleNamespacePrefixes, hasAttribute, hasAttributeNS, isRoot, item, output, publishContents, publishToHandler, removeAttribute, removeAttribute, removeAttributeNode, removeAttributeNS, removeContents, removeNamespaceDeclaration, setAllAttributes, setAttribute, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setContentsIndex, setEncodingStyle, setEndIndex, setEnvelope, setFixupDeserializer, setName, setNamespaceURI, setNSMappings, setObjectValue, setQName, setRecorder, setType, setValue, toString
-
Methods inherited from class org.apache.axis.message.NodeImpl
appendChild, compareDocumentPosition, convertAttrSAXtoDOM, detachNode, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getParent, getParentElement, getParentNode, getPrefix, getPreviousSibling, getSchemaTypeInfo, getTextContent, getUserData, hasAttributes, hasChildNodes, initializeChildren, insertBefore, isDefaultNamespace, isDirty, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, makeAttributesEditable, normalize, recycleNode, replaceChild, reset, setDirty, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setNodeValue, setOwnerDocument, setParent, setParentElement, setPrefix, setTextContent, setUserData
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.w3c.dom.Element
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
-
Methods inherited from interface javax.xml.soap.Node
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
-
Methods inherited from interface org.w3c.dom.Node
appendChild, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
-
Methods inherited from interface javax.xml.soap.SOAPElement
addAttribute, addChildElement, addChildElement, addChildElement, addChildElement, addChildElement, addNamespaceDeclaration, addTextNode, getAllAttributes, getAttributeValue, getChildElements, getChildElements, getElementName, getEncodingStyle, getNamespacePrefixes, getNamespaceURI, getVisibleNamespacePrefixes, removeAttribute, removeContents, removeNamespaceDeclaration, setEncodingStyle
-
-
-
-
Constructor Detail
-
SOAPEnvelope
public SOAPEnvelope()
-
SOAPEnvelope
public SOAPEnvelope(SOAPConstants soapConstants)
-
SOAPEnvelope
public SOAPEnvelope(SOAPConstants soapConstants, SchemaVersion schemaVersion)
-
SOAPEnvelope
public SOAPEnvelope(boolean registerPrefixes, SOAPConstants soapConstants)
-
SOAPEnvelope
public SOAPEnvelope(boolean registerPrefixes, SOAPConstants soapConstants, SchemaVersion schemaVersion)
-
SOAPEnvelope
public SOAPEnvelope(java.io.InputStream input) throws org.xml.sax.SAXException
- Throws:
org.xml.sax.SAXException
-
-
Method Detail
-
getMessageType
public java.lang.String getMessageType()
Get the Message Type (REQUEST/RESPONSE)- Returns:
- message type
-
setMessageType
public void setMessageType(java.lang.String messageType)
Set the Message Type (REQUEST/RESPONSE)- Parameters:
messageType
-
-
getBodyElements
public java.util.Vector getBodyElements() throws AxisFault
Get all the BodyElement's in the soap body- Returns:
- vector with body elements
- Throws:
AxisFault
-
getTrailers
public java.util.Vector getTrailers()
Return trailers- Returns:
- vector of some type
-
getFirstBody
public SOAPBodyElement getFirstBody() throws AxisFault
Get the first BodyElement in the SOAP Body- Returns:
- first Body Element
- Throws:
AxisFault
-
getHeaders
public java.util.Vector getHeaders() throws AxisFault
Get Headers- Returns:
- Vector containing Header's
- Throws:
AxisFault
-
getHeadersByActor
public java.util.Vector getHeadersByActor(java.util.ArrayList actors)
Get all the headers targeted at a list of actors.
-
addHeader
public void addHeader(SOAPHeaderElement hdr)
Add a HeaderElement- Parameters:
hdr
-
-
addBodyElement
public void addBodyElement(SOAPBodyElement element)
Add a SOAP Body Element- Parameters:
element
-
-
removeHeaders
public void removeHeaders()
Remove all headers
-
setHeader
public void setHeader(SOAPHeader hdr)
Set the SOAP Header- Parameters:
hdr
-
-
removeHeader
public void removeHeader(SOAPHeaderElement hdr)
Remove a Header Element from SOAP Header- Parameters:
hdr
-
-
removeBody
public void removeBody()
Remove the SOAP Body
-
setBody
public void setBody(SOAPBody body)
Set the soap body- Parameters:
body
-
-
removeBodyElement
public void removeBodyElement(SOAPBodyElement element)
Remove a Body Element from the soap body- Parameters:
element
-
-
removeTrailer
public void removeTrailer(MessageElement element)
Remove an element from the trailer- Parameters:
element
-
-
clearBody
public void clearBody()
clear the elements in the soap body
-
addTrailer
public void addTrailer(MessageElement element)
Add an element to the trailer- Parameters:
element
-
-
getHeaderByName
public SOAPHeaderElement getHeaderByName(java.lang.String namespace, java.lang.String localPart) throws AxisFault
Get a header by name (always respecting the currently in-scope actors list)- Throws:
AxisFault
-
getHeaderByName
public SOAPHeaderElement getHeaderByName(java.lang.String namespace, java.lang.String localPart, boolean accessAllHeaders) throws AxisFault
Get a header by name, filtering for headers targeted at this engine depending on the accessAllHeaders parameter.- Throws:
AxisFault
-
getBodyByName
public SOAPBodyElement getBodyByName(java.lang.String namespace, java.lang.String localPart) throws AxisFault
Get a body element given its name- Parameters:
namespace
-localPart
-- Returns:
- Throws:
AxisFault
-
getHeadersByName
public java.util.Enumeration getHeadersByName(java.lang.String namespace, java.lang.String localPart) throws AxisFault
Get an enumeration of header elements given the namespace and localpart- Parameters:
namespace
-localPart
-- Returns:
- Throws:
AxisFault
-
getHeadersByName
public java.util.Enumeration getHeadersByName(java.lang.String namespace, java.lang.String localPart, boolean accessAllHeaders) throws AxisFault
Return an Enumeration of headers which match the given namespace and localPart. Depending on the value of the accessAllHeaders parameter, we will attempt to filter on the current engine's list of actors. !!! NOTE THAT RIGHT NOW WE ALWAYS ASSUME WE'RE THE "ULTIMATE DESTINATION" (i.e. we match on null actor). IF WE WANT TO FULLY SUPPORT INTERMEDIARIES WE'LL NEED TO FIX THIS.- Throws:
AxisFault
-
outputImpl
public void outputImpl(SerializationContext context) throws java.lang.Exception
Should make SOAPSerializationException?- Overrides:
outputImpl
in classMessageElement
- Parameters:
context
- destination.- Throws:
java.lang.Exception
- if something went wrong.
-
getSOAPConstants
public SOAPConstants getSOAPConstants()
Get the soap constants for this envelope- Returns:
-
setSoapConstants
public void setSoapConstants(SOAPConstants soapConstants)
Set the soap constants for this envelope- Parameters:
soapConstants
-
-
getSchemaVersion
public SchemaVersion getSchemaVersion()
Get the schema version for this envelope- Returns:
-
setSchemaVersion
public void setSchemaVersion(SchemaVersion schemaVersion)
Set the schema version for this envelope- Parameters:
schemaVersion
-
-
addBody
public SOAPBody addBody() throws SOAPException
Add a soap body if one does not exist- Specified by:
addBody
in interfaceSOAPEnvelope
- Returns:
- Throws:
SOAPException
-
addHeader
public SOAPHeader addHeader() throws SOAPException
Add a soap header if one does not exist- Specified by:
addHeader
in interfaceSOAPEnvelope
- Returns:
- Throws:
SOAPException
-
createName
public Name createName(java.lang.String localName) throws SOAPException
create a Name given the local part- Specified by:
createName
in interfaceSOAPEnvelope
- Parameters:
localName
-- Returns:
- Throws:
SOAPException
-
createName
public Name createName(java.lang.String localName, java.lang.String prefix, java.lang.String uri) throws SOAPException
Create a name given local part, prefix and uri- Specified by:
createName
in interfaceSOAPEnvelope
- Parameters:
localName
-prefix
-uri
-- Returns:
- Throws:
SOAPException
-
getBody
public SOAPBody getBody() throws SOAPException
Get the soap body- Specified by:
getBody
in interfaceSOAPEnvelope
- Returns:
- Throws:
SOAPException
-
getHeader
public SOAPHeader getHeader() throws SOAPException
Get the soap header- Specified by:
getHeader
in interfaceSOAPEnvelope
- Returns:
- Throws:
SOAPException
-
setSAAJEncodingCompliance
public void setSAAJEncodingCompliance(boolean comply)
-
removeChild
public org.w3c.dom.Node removeChild(org.w3c.dom.Node oldChild) throws org.w3c.dom.DOMException
Description copied from class:NodeImpl
Removes the child node indicated byoldChild
from the list of children, and returns it.- Specified by:
removeChild
in interfaceorg.w3c.dom.Node
- Overrides:
removeChild
in classNodeImpl
- Parameters:
oldChild
- The node being removed.- Returns:
- The node removed.
- Throws:
org.w3c.dom.DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
NOT_FOUND_ERR: Raised ifoldChild
is not a child of this node.
-
cloneNode
public org.w3c.dom.Node cloneNode(boolean deep)
Description copied from class:MessageElement
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.- Specified by:
cloneNode
in interfaceorg.w3c.dom.Node
- Overrides:
cloneNode
in classMessageElement
- 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.
-
childDeepCloned
protected void childDeepCloned(NodeImpl oldNode, NodeImpl newNode)
- Overrides:
childDeepCloned
in classMessageElement
-
setOwnerDocument
public void setOwnerDocument(SOAPPart sp)
-
setRecorded
public void setRecorded(boolean recorded)
-
isRecorded
public boolean isRecorded()
-
setDirty
public void setDirty(boolean dirty)
Description copied from class:NodeImpl
set the dirty bit. will also set our parent as dirty, if there is one. Note that clearing the dirty bit does not propagate upwards.
-
-