| 
 | Java™ Platform Standard Ed. 6 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface SOAPEnvelope
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
 deleteNode deletes 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 | 
|---|
| Method Summary | |
|---|---|
|  SOAPBody | addBody()Creates a SOAPBodyobject and sets it as theSOAPBodyobject for thisSOAPEnvelopeobject. | 
|  SOAPHeader | addHeader()Creates a SOAPHeaderobject and sets it as theSOAPHeaderobject for thisSOAPEnvelopeobject. | 
|  Name | createName(String localName)Creates a new Nameobject initialized with the
 given local name. | 
|  Name | createName(String localName,
           String prefix,
           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
 thisSOAPEnvelopeobject. | 
| Methods inherited from interface javax.xml.soap.Node | 
|---|
| detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue | 
| 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 org.w3c.dom.Node | 
|---|
| appendChild, cloneNode, 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, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData | 
| Method Detail | 
|---|
Name createName(String localName,
                String prefix,
                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
Name createName(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
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
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
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
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| 
 | Java™ Platform Standard Ed. 6 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.