| 
 | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
The container for the SOAPHeader and SOAPBody portions of a
   SOAPPart object. By default, a 
   SOAPMessage object is created with a 
   SOAPPart object that has a SOAPEnvelope
   object. The SOAPEnvelope object by default has an
   empty SOAPBody object and an empty 
   SOAPHeader object. The SOAPBody object is
   required, and the SOAPHeader object, though
   optional, is used in the majority of cases. If the 
   SOAPHeader object is not needed, it can be deleted,
   which is shown later.
A client can access the SOAPHeader and 
   SOAPBody objects by calling the methods 
   SOAPEnvelope.getHeader and 
   SOAPEnvelope.getBody. The following lines of code use
   these two methods after starting with the 
   SOAPMessage object message to get the 
   SOAPPart object sp, which is then used to get the
   SOAPEnvelope object se.
    SOAPPart sp = message.getSOAPPart();
    SOAPEnvelope se = sp.getEnvelope();
    SOAPHeader sh = se.getHeader();
    SOAPBody sb = se.getBody();
 
   It is possible to change the body or header of a 
   SOAPEnvelope object by retrieving the current one,
   deleting it, and then adding a new body or header. The 
   javax.xml.soap.Node method detachNode
   detaches the XML element (node) on which it is called. For
   example, the following line of code deletes the 
   SOAPBody object that is retrieved by the method 
   getBody.
     se.getBody().detachNode();
 
   To create a SOAPHeader object to replace the one
   that was removed, a client uses the method 
   SOAPEnvelope.addHeader, which creates a new header and
   adds it to the SOAPEnvelope object. Similarly, the
   method addBody creates a new SOAPBody
   object and adds it to the SOAPEnvelope object. The
   following code fragment retrieves the current header, removes
   it, and adds a new one. Then it retrieves the current body,
   removes it, and adds a new one.
 
    SOAPPart sp = message.getSOAPPart();
    SOAPEnvelope se = sp.getEnvelope();
    se.getHeader().detachNode();
    SOAPHeader sh = se.addHeader();
    se.getBody().detachNode();
    SOAPBody sb = se.addBody();
 
   It is an error to add a SOAPBody or 
   SOAPHeader object if one already exists.
   The SOAPEnvelope interface provides three
   methods for creating Name objects. One method
   creates Name objects with a local name, a
   namespace prefix, and a namesapce URI. The second method
   creates Name objects with a local name and a
   namespace prefix, and the third creates Name
   objects with just a local name. The following line of code, in
   which se is a SOAPEnvelope object, creates
   a new Name object with all three.
    Name name = se.createName("GetLastTradePrice", "WOMBAT",
                               "http://www.wombat.org/trader");
 
| Field Summary | 
| 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 | 
| Method Summary | |
|  SOAPBody | addBody()Creates a SOAPBodyobject and sets it as theSOAPBodyobject for this
   SOAPEnvelopeobject. | 
|  SOAPHeader | addHeader()Creates a SOAPHeaderobject and sets it as theSOAPHeaderobject for this
   SOAPEnvelopeobject. | 
|  Name | createName(java.lang.String localName)Creates a new Nameobject initialized with the
   given local name. | 
|  Name | createName(java.lang.String localName,
           java.lang.String prefix,
           java.lang.String uri)Creates a new Nameobject initialized with the
   given local name, namespace prefix, and namespace URI. | 
|  SOAPBody | getBody()Returns the SOAPBodyobject associated with
   thisSOAPEnvelopeobject. | 
|  SOAPHeader | getHeader()Returns the SOAPHeaderobject for this
   SOAPEnvelopeobject. | 
| Methods inherited from interface javax.xml.soap.Node | 
| detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue | 
| Methods inherited from interface org.w3c.dom.Node | 
| appendChild, 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 | 
| Method Detail | 
public Name createName(java.lang.String localName,
                       java.lang.String prefix,
                       java.lang.String uri)
                throws SOAPException
Name object initialized with the
   given local name, namespace prefix, and namespace URI.
   This factory method creates Name objects
   for use in the SOAP/XML document.
localName - a String giving
     the local nameprefix - a String giving
     the prefix of the namespaceuri - a String giving the
     URI of the namespace
Name object initialized with the given
     local name, namespace prefix, and namespace URI
SOAPException - if there is a SOAP error
public Name createName(java.lang.String localName)
                throws SOAPException
Name object initialized with the
   given local name.
   This factory method creates Name objects
   for use in the SOAP/XML document.
localName - a String giving
 the local name
Name object initialized with the given
     local name
SOAPException - if there is a SOAP error
public SOAPHeader getHeader()
                     throws SOAPException
SOAPHeader object for this 
   SOAPEnvelope object.
   A new SOAPMessage object is by default
   created with a SOAPEnvelope object that
   contains an empty SOAPHeader object. As a
   result, the method getHeader will always
   return a SOAPHeader object unless the header
   has been removed and a new one has not been added.
SOAPHeader object or 
     null if there is none
SOAPException - if there is a problem
     obtaining the SOAPHeader object
public SOAPBody getBody()
                 throws SOAPException
SOAPBody object associated with
   this SOAPEnvelope object.
   A new SOAPMessage object is by default
   created with a SOAPEnvelope object that
   contains an empty SOAPBody object. As a
   result, the method getBody will always return
   a SOAPBody object unless the body has been
   removed and a new one has not been added.
SOAPBody object for this 
     SOAPEnvelope object or null if there
     is none
SOAPException - if there is a problem
     obtaining the SOAPBody object
public SOAPHeader addHeader()
                     throws SOAPException
SOAPHeader object and sets it as the
   SOAPHeader object for this 
   SOAPEnvelope object.
   It is illegal to add a header when the envelope already contains a header. Therefore, this method should be called only after the existing header has been removed.
SOAPHeader object
SOAPException - if this 
     SOAPEnvelope object already contains a valid
     SOAPHeader object
public SOAPBody addBody()
                 throws SOAPException
SOAPBody object and sets it as the
   SOAPBody object for this 
   SOAPEnvelope object.
   It is illegal to add a body when the envelope already contains a body. Therefore, this method should be called only after the existing body has been removed.
SOAPBody object
SOAPException - if this 
     SOAPEnvelope object already contains a valid
     SOAPBody object| 
 | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||