## org.apache.axis.message
Class SOAPHeader

    java.lang.Object
      org.apache.axis.message.NodeImpl
          org.apache.axis.message.MessageElement
              org.apache.axis.message.SOAPHeader

All Implemented Interfaces:
  java.lang.Cloneable, org.w3c.dom.Element, Node, org.w3c.dom.Node, org.w3c.dom.NodeList, java.io.Serializable, SOAPElement, SOAPHeader

public class SOAPHeader
extends MessageElement
implements SOAPHeader

Holder for header elements.

Author:
  Glyn Normington (glyn@apache.org)
See Also:
  Serialized Form

Nested Class Summary

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

Field Summary

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
`SOAPHeader(java.lang.String namespace, java.lang.String localPart, java.lang.String prefix, org.xml.sax.Attributes attributes, DeserializationContext context, SOAPConstants soapConsts)`

Method Summary
`void` `addChild(MessageElement element)` Note that this method will log a error and no-op if there is a value (set using setObjectValue) in the MessageElement.
`SOAPElement` `addChildElement(Name name)` Creates a new `SOAPElement` object initialized with the given `Name` object and adds the new element to this `SOAPElement` object.
`SOAPElement` `addChildElement(SOAPElement element)` Add a `SOAPElement` as a child of this `SOAPElement` instance.
`SOAPElement` `addChildElement(java.lang.String localName)` Creates a new `SOAPElement` object initialized with the given `String` object and adds the new element to this `SOAPElement` object.
`SOAPElement` `addChildElement(java.lang.String localName, java.lang.String prefix)` Creates a new `SOAPElement` object initialized with the specified local name and prefix and adds the new element to this `SOAPElement` object.
`SOAPElement` `addChildElement(java.lang.String localName, java.lang.String prefix, java.lang.String uri)` Creates a new `SOAPElement` object initialized with the specified local name, prefix, and URI and adds the new element to this `SOAPElement` object.
`SOAPHeaderElement` `addHeaderElement(Name name)` Creates a new `SOAPHeaderElement` object initialized with the specified name and adds it to this `SOAPHeader` object.
`org.w3c.dom.Node` `appendChild(org.w3c.dom.Node newChild)` Adds the node `newChild` to the end of the list of children of this node.
`java.util.Iterator` `examineAllHeaderElements()` Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object.
`java.util.Iterator` `examineHeaderElements(java.lang.String actor)` Returns a list of all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the the specified actor.
`java.util.Iterator` `examineMustUnderstandHeaderElements(java.lang.String actor)` Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the specified actor and that have a MustUnderstand attribute whose value is equivalent to `true`.
`java.util.Iterator` `extractAllHeaderElements()` Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object and detaches them from this `SOAPHeader` object.
`java.util.Iterator` `extractHeaderElements(java.lang.String actor)` Returns a list of all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the the specified actor and detaches them from this `SOAPHeader` object.
`protected void` `outputImpl(SerializationContext context)` override point -output to a serialization context.
`void` `setParentElement(SOAPElement parent)` Sets the parent of this `Node` object to the given `SOAPElement` object.

Methods inherited from class org.apache.axis.message.MessageElement

`addAttribute, addAttribute, addAttribute, addAttribute, addMapping, addNamespaceDeclaration, addTextNode, childDeepCloned, cloneNode, 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

`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, removeChild, replaceChild, reset, setDirty, setDirty, setNodeValue, setOwnerDocument, setParent, 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, 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, setValue`

Methods inherited from interface org.w3c.dom.Node
`cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, 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`

Constructor Detail

### SOAPHeader

    public SOAPHeader(java.lang.String namespace,
                      java.lang.String localPart,
                      java.lang.String prefix,
                      org.xml.sax.Attributes attributes,
                      DeserializationContext context,
                      SOAPConstants soapConsts)
               throws AxisFault

Method Detail

### setParentElement

    public void setParentElement(SOAPElement parent)
                          throws SOAPException

  Description copied from interface: `Node`
  Sets the parent of this `Node` object to the given `SOAPElement` object.

  Specified by:
    `setParentElement` in interface `Node`
  Overrides:
    `setParentElement` in class `NodeImpl`
  Parameters:
    `parent` - the `SOAPElement` object to be set as the parent of this `Node` object
  Throws:
    `SOAPException` - if there is a problem in setting the parent to the given element
  See Also:
    `getParentElement()`

### addHeaderElement

    public SOAPHeaderElement addHeaderElement(Name name)
                                       throws SOAPException

  Description copied from interface: `SOAPHeader`
  Creates a new `SOAPHeaderElement` object initialized with the specified name and adds it to this `SOAPHeader` object.

  Specified by:
    `addHeaderElement` in interface `SOAPHeader`
  Parameters:
    `name` - a `Name` object with the name of the new `SOAPHeaderElement` object
  Returns:
    the new `SOAPHeaderElement` object that was inserted into this `SOAPHeader` object
  Throws:
    `SOAPException` - if a SOAP error occurs

### examineHeaderElements

    public java.util.Iterator examineHeaderElements(java.lang.String actor)

  Description copied from interface: `SOAPHeader`
  Returns a list of all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the the specified actor. An actor is a global attribute that indicates the intermediate parties to whom the message should be sent. An actor receives the message and then sends it to the next actor. The default actor is the ultimate intended recipient for the message, so if no actor attribute is included in a `SOAPHeader` object, the message is sent to its ultimate destination.

  Specified by:
    `examineHeaderElements` in interface `SOAPHeader`
  Parameters:
    `actor` - a `String` giving the URI of the actor for which to search
  Returns:
    an `Iterator` object over all the `SOAPHeaderElement` objects that contain the specified actor
  See Also:
    `extractHeaderElements(java.lang.String)`

### extractHeaderElements

    public java.util.Iterator extractHeaderElements(java.lang.String actor)

  Description copied from interface: `SOAPHeader`
  Returns a list of all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the the specified actor and detaches them from this `SOAPHeader` object.

  This method allows an actor to process only the parts of the `SOAPHeader` object that apply to it and to remove them before passing the message on to the next actor.

  Specified by:
    `extractHeaderElements` in interface `SOAPHeader`
  Parameters:
    `actor` - a `String` giving the URI of the actor for which to search
  Returns:
    an `Iterator` object over all the `SOAPHeaderElement` objects that contain the specified actor
  See Also:
    `examineHeaderElements(java.lang.String)`

### examineMustUnderstandHeaderElements

    public java.util.Iterator examineMustUnderstandHeaderElements(java.lang.String actor)

  Description copied from interface: `SOAPHeader`
  Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object that have the specified actor and that have a MustUnderstand attribute whose value is equivalent to `true`.

  Specified by:
    `examineMustUnderstandHeaderElements` in interface `SOAPHeader`
  Parameters:
    `actor` - a `String` giving the URI of the actor for which to search
  Returns:
    an `Iterator` object over all the `SOAPHeaderElement` objects that contain the specified actor and are marked as MustUnderstand

### examineAllHeaderElements

    public java.util.Iterator examineAllHeaderElements()

  Description copied from interface: `SOAPHeader`
  Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object.

  Specified by:
    `examineAllHeaderElements` in interface `SOAPHeader`
  Returns:
    an `Iterator` object over all the `SOAPHeaderElement` objects contained by this `SOAPHeader`

### extractAllHeaderElements

    public java.util.Iterator extractAllHeaderElements()

  Description copied from interface: `SOAPHeader`
  Returns an `Iterator` over all the `SOAPHeaderElement` objects in this `SOAPHeader` object and detaches them from this `SOAPHeader` object.

  Specified by:
    `extractAllHeaderElements` in interface `SOAPHeader`
  Returns:
    an `Iterator` object over all the `SOAPHeaderElement` objects contained by this `SOAPHeader`

### outputImpl

    protected void outputImpl(SerializationContext context)
                       throws java.lang.Exception

  Description copied from class: `MessageElement`
  override point -output to a serialization context.

  Overrides:
    `outputImpl` in class `MessageElement`
  Parameters:
    `context` - destination.
  Throws:
    `java.lang.Exception` - if something went wrong.

### addChild

    public void addChild(MessageElement element)
                  throws SOAPException

  Description copied from class: `MessageElement`
  Note that this method will log a error and no-op if there is a value (set using setObjectValue) in the MessageElement.

  Overrides:
    `addChild` in class `MessageElement`
  Throws:
    `SOAPException`

### addChildElement

    public SOAPElement addChildElement(SOAPElement element)
                                throws SOAPException

  Description copied from interface: `SOAPElement`
  Add a `SOAPElement` as a child of this `SOAPElement` instance. The `SOAPElement` is expected to be created by a `SOAPElementFactory`. Callers should not rely on the element instance being added as is into the XML tree. Implementations could end up copying the content of the `SOAPElement` passed into an instance of a different `SOAPElement` implementation. For instance if `addChildElement()` is called on a `SOAPHeader`, `element` will be copied into an instance of a `SOAPHeaderElement`.

  The fragment rooted in `element` is either added as a whole or not at all, if there was an error.

  The fragment rooted in `element` cannot contain elements named "Envelope", "Header" or "Body" and in the SOAP namespace. Any namespace prefixes present in the fragment should be fully resolved using appropriate namespace declarations within the fragment itself.

  Specified by:
    `addChildElement` in interface `SOAPElement`
  Overrides:
    `addChildElement` in class `MessageElement`
  Throws:
    `SOAPException`
  See Also:
    `SOAPElement.addChildElement(javax.xml.soap.SOAPElement)`

### addChildElement

    public SOAPElement addChildElement(Name name)
                                throws SOAPException

  Description copied from interface: `SOAPElement`
  Creates a new `SOAPElement` object initialized with the given `Name` object and adds the new element to this `SOAPElement` object.

  Specified by:
    `addChildElement` in interface `SOAPElement`
  Overrides:
    `addChildElement` in class `MessageElement`
  Parameters:
    `name` - uri, prefix and local name of the element to add
  Returns:
    the child element
  Throws:
    `SOAPException`
  See Also:
    `SOAPElement.addChildElement(javax.xml.soap.Name)`

### addChildElement

    public SOAPElement addChildElement(java.lang.String localName)
                                throws SOAPException

  Description copied from interface: `SOAPElement`
  Creates a new `SOAPElement` object initialized with the given `String` object and adds the new element to this `SOAPElement` object.

  Specified by:
    `addChildElement` in interface `SOAPElement`
  Overrides:
    `addChildElement` in class `MessageElement`
  Parameters:
    `localName` -
  Returns:
    the child element
  Throws:
    `SOAPException`
  See Also:
    `SOAPElement.addChildElement(String)`

### addChildElement

    public SOAPElement addChildElement(java.lang.String localName,
                                       java.lang.String prefix)
                                throws SOAPException

  Description copied from interface: `SOAPElement`
  Creates a new `SOAPElement` object initialized with the specified local name and prefix and adds the new element to this `SOAPElement` object.

  Specified by:
    `addChildElement` in interface `SOAPElement`
  Overrides:
    `addChildElement` in class `MessageElement`
  Parameters:
    `localName` -
    `prefix` -
  Returns:
    the child element
  Throws:
    `SOAPException`
  See Also:
    `SOAPElement.addChildElement(String, String)`

### addChildElement

    public SOAPElement addChildElement(java.lang.String localName,
                                       java.lang.String prefix,
                                       java.lang.String uri)
                                throws SOAPException

  Description copied from interface: `SOAPElement`
  Creates a new `SOAPElement` object initialized with the specified local name, prefix, and URI and adds the new element to this `SOAPElement` object.

  Specified by:
    `addChildElement` in interface `SOAPElement`
  Overrides:
    `addChildElement` in class `MessageElement`
  Parameters:
    `localName` -
    `prefix` -
    `uri` -
  Returns:
    the child element
  Throws:
    `SOAPException`
  See Also:
    `SOAPElement.addChildElement(String, String, String)`

### appendChild

    public org.w3c.dom.Node appendChild(org.w3c.dom.Node newChild)
                                 throws org.w3c.dom.DOMException

  Description copied from class: `NodeImpl`
  Adds the node `newChild` to the end of the list of children of this node. If the `newChild` is already in the tree, it is first removed.

  Specified by:
    `appendChild` in interface `org.w3c.dom.Node`
  Overrides:
    `appendChild` in class `NodeImpl`
  Parameters:
    `newChild` - The node to add.If it is a `DocumentFragment` object, the entire contents of the document fragment are moved into the child list of this node
  Returns:
    The node added.
  Throws:
    `org.w3c.dom.DOMException` - HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the `newChild` node, or if the node to append is one of this node's ancestors or this node itself.
    WRONG_DOCUMENT_ERR: Raised if `newChild` 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.

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