## 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.lang.Cloneable, org.w3c.dom.Element, Node, org.w3c.dom.Node, org.w3c.dom.NodeList, java.io.Serializable, SOAPElement, SOAPEnvelope

public class SOAPEnvelope
extends MessageElement
implements SOAPEnvelope

Implementation of a SOAP Envelope

See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class org.apache.axis.message.MessageElement
`MessageElement.QNameAttr`

Field Summary
`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_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Constructor Summary
`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
`SOAPBody` `addBody()` Add a soap body if one does not exist
`void` `addBodyElement(SOAPBodyElement element)` Add a SOAP Body Element
`SOAPHeader` `addHeader()` Add a soap header if one does not exist
`void` `addHeader(SOAPHeaderElement hdr)` Add a HeaderElement
`void` `addTrailer(MessageElement element)` Add an element to the trailer
`protected void` `childDeepCloned(NodeImpl oldNode, NodeImpl newNode)`
`void` `clearBody()` clear the elements in the soap body
`org.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 part
`Name` `createName(java.lang.String localName, java.lang.String prefix, java.lang.String uri)` Create a name given local part, prefix and uri
`SOAPBody` `getBody()` Get the soap body
`SOAPBodyElement` `getBodyByName(java.lang.String namespace, java.lang.String localPart)` Get a body element given its name
`java.util.Vector` `getBodyElements()` Get all the BodyElement's in the soap body
`SOAPBodyElement` `getFirstBody()` Get the first BodyElement in the SOAP Body
`SOAPHeader` `getHeader()` Get the soap header
`SOAPHeaderElement` `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 Headers
`java.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 localpart
`java.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 envelope
`SOAPConstants` `getSOAPConstants()` Get the soap constants for this envelope
`java.util.Vector` `getTrailers()` Return trailers
`boolean` `isRecorded()`
`void` `outputImpl(SerializationContext context)` Should make SOAPSerializationException?
`void` `removeBody()` Remove the SOAP Body
`void` `removeBodyElement(SOAPBodyElement element)` Remove a Body Element from the soap body
`org.w3c.dom.Node` `removeChild(org.w3c.dom.Node oldChild)` Removes the child node indicated by `oldChild` from the list of children, and returns it.
`void` `removeHeader(SOAPHeaderElement hdr)` Remove a Header Element from SOAP Header
`void` `removeHeaders()` Remove all headers
`void` `removeTrailer(MessageElement element)` Remove an element from the trailer
`void` `setBody(SOAPBody body)` Set the soap body
`void` `setDirty(boolean dirty)` set the dirty bit.
`void` `setHeader(SOAPHeader hdr)` Set the SOAP Header
`void` `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 envelope
`void` `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, convertAttrSAXtoDOM, detachNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getParent, getParentElement, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, initializeChildren, insertBefore, isDirty, isSupported, makeAttributesEditable, normalize, recycleNode, replaceChild, reset, setDirty, setNodeValue, setOwnerDocument, setParent, setParentElement, setPrefix`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

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`

Methods inherited from interface javax.xml.soap.Node
`detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue`

Methods inherited from interface org.w3c.dom.Node
`appendChild, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, replaceChild, setNodeValue, setPrefix`

Methods inherited from interface org.w3c.dom.Element
`getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS`

Field Detail

### log

    protected static org.apache.commons.logging.Log log

### trailers

    public java.util.Vector trailers

### messageType

    public java.lang.String messageType

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

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 class `MessageElement`
  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 interface `SOAPEnvelope`
  Returns:
  Throws:
    `SOAPException`

### addHeader

    public SOAPHeader addHeader()
                         throws SOAPException

  Add a soap header if one does not exist

  Specified by:
    `addHeader` in interface `SOAPEnvelope`
  Returns:
  Throws:
    `SOAPException`

### createName

    public Name createName(java.lang.String localName)
                    throws SOAPException

  create a Name given the local part

  Specified by:
    `createName` in interface `SOAPEnvelope`
  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 interface `SOAPEnvelope`
  Parameters:
    `localName` -
    `prefix` -
    `uri` -
  Returns:
  Throws:
    `SOAPException`

### getBody

    public SOAPBody getBody()
                     throws SOAPException

  Get the soap body

  Specified by:
    `getBody` in interface `SOAPEnvelope`
  Returns:
  Throws:
    `SOAPException`

### getHeader

    public SOAPHeader getHeader()
                         throws SOAPException

  Get the soap header

  Specified by:
    `getHeader` in interface `SOAPEnvelope`
  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 by `oldChild` from the list of children, and returns it.

  Specified by:
    `removeChild` in interface `org.w3c.dom.Node`
  Overrides:
    `removeChild` in class `NodeImpl`
  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 if `oldChild` 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` is `null`.).
  Cloning an `Element` 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 child `Text` node. Cloning an `Attribute` directly, as opposed to be cloned as part of an `Element` cloning operation, returns a specified attribute ( `specified` is `true`). 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 an `EntityReference` clone are readonly . In addition, clones of unspecified `Attr` nodes are specified. And, cloning `Document`, `DocumentType`, `Entity`, and `Notation` nodes is implementation dependent.

  Specified by:
    `cloneNode` in interface `org.w3c.dom.Node`
  Overrides:
    `cloneNode` in class `MessageElement`
  Parameters:
    `deep` - If `true`, recursively clone the subtree under the specified node; if `false`, clone only the node itself (and its attributes, if it is an `Element`).
  Returns:
    The duplicate node.

### childDeepCloned

    protected void childDeepCloned(NodeImpl oldNode,
                                   NodeImpl newNode)

  Overrides:
    `childDeepCloned` in class `MessageElement`

### 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.

  Overrides:
    `setDirty` in class `NodeImpl`
  Parameters:
    `dirty` - new value of the dirty bit

Copyright © 2005 Apache Web Services Project. All Rights Reserved.