About JCP
                
            
            Get Involved
		
            
            Community Resources
                
            
            Community News
                
            
            FAQ
            Contact Us
            
            
            
            
        
        
        
        
        
  
  
  
    
                      
                      
              
                 | 
                
                
		  | 
                
                
                
    
  
    
    
    
      SAAJ 1.2 Change Log
    
    
  
                              
  
     
      SOAP with Attachments API for
         JavaTM (SAAJ) 1.2
     
    
      April 10, 2003
     
     
    
       
     
    
    
      C001, C002,
      C003, C004,
      C005, C006,
      C007, C008,
      C009, C010,
      C011, C012,
      C013, C014,
      C015, C016,
      C017, C018,
      C019, C020,
      C021, C022,
      C023, C024,
      C025, C026,
      C027, C028,
      C029, C030,
      C031, C032,
      C033, C034,
      C035, C036,
      C037, C038,
      C039, C040,
      C041, C042,
      C043, C044,
      C045, C046,
      C047
     
     
    
    
      Maintenance revision of the SOAP with Attachments API for
         JavaTM (SAAJ), version 1.2.
     
    
    
      Nicholas Kassem and Phil Goodwin, Sun Microsystems, Inc.
     
    
    
      Comments should be sent to mailto:jaxm-final@sun.com
     
     
    
    
      The goal of this maintenance release is to provide support for the
      proposed WS-I Basic Profile of SOAP 1.1. In addition we would like to
      take the opportunity to make a number of corrections and clarifications
      to the specification and JavaDocs.
     
    
      The WS-I Basic Profile does not add any capabilities to the SOAP 1.1
      document that it moderates. It does, however, promote the use of some
      SOAP 1.1 features even as it proscribes the use of others. The goal of
      this change log is to make it easier for applications to create and use
      messages that are WS-I conformant. This maintenance release is concerned
      with the following areas:
     
    
      
        - 
          
            The use of literal encoding
           
         
        - 
          
            Access to SOAP 1.1 features that are of increased prominence
           
         
        - 
          
            Easier conformance to WS-I recommendations
           
         
       
     SOAP 1.2 support has been considered and set aside for the current
    maintenance cycle in order to reinforce the JCP's focus on WS-I support in
    J2EE 1.4  
     
    
    
      
        - 
          
            Bind SAAJ APIs to DOM APIs 
             Rationale: DOM is already in use in
            many environments. If SAAJ trees are also DOM trees then SAAJ will
            be able to integrate more easily with many applications and
            tools.
           
         
        - 
          
            Add properties to
            SOAPMessage 
             Rationale: There are several details about the formatting
            and encoding of a SOAP message that can affect interoperability.
            Giving the end user control over these details while retaining the
            same defaults as SAAJ 1.1 allows us to deliver a higher degree of
            potential interoperability without sacrificing usability or
            backward compatibility.
           
         
        - 
          
            Add ease of use methods
            to key APIs  Rationale: There are several opportunities in the SAAJ API to make it
            easier on the end user to conform to the recommendations of SOAP
            1.1 or WS-I. These new methods will automate frequent or
            error-prone tasks, leading to higher productivity, fewer errors -
            and less technical support.In addition, it is expected that the
            average developer will not have extensive knowledge of DOM APIs and
            so we would like to support common SOAP use cases involving DOM
            through the SAAJ APIs.
           
         
        - 
          
            Clarify and correct the wording of JavaDocs
            and specification 
             Scope: None of these changes will break backward
            compatibility or allow new behavior that was explicitly forbidden
            before. In particular, conforming implementations will not break
            existing clients and will be capable of passing the existing TCK.
            Some of these changes will impose new requirements on
            implementations. Where that is the case the changes will be
            specifically enumerated in this document. 
             Rationale: Corrections of this nature cost little and
            improve the overall integrity of the specification making correct
            implementations easier to create, validate and use.
           
         
       
     
     
     
    
     
    
       C001
    
    
      
        
          javax.xml.soap 
           Interface Node
        
        
          - 
            All Superinterfaces:
          
 
          - 
            org.w3c.dom.Node
          
 
         
        
          - 
            public interface Node
          
 
          - 
            extends org.w3c.dom.Node
          
 
         
        
          A representation of a node (element) in an XML document. This
          interface extends the standard DOM Node interface with methods for
          getting and setting the value of a node, for getting and setting the
          parent of a node, and for removing a node.
         
       
      
        
       
      
        
          
            
              | 
                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
               | 
             
          
         
       
      
        
       
      
        
          
            
              | 
                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
               | 
             
          
         
       
     
    
    
    
     
     
    
       C002
    
    
      
        
          javax.xml.soap 
           Interface SOAPElement
        
        
          - 
            All Superinterfaces:
          
 
          - 
            org.w3c.dom.Element, Node, org.w3c.dom.Node
          
 
         
        
          - 
            public interface SOAPElement
          
 
          - 
            extends Node, org.w3c.dom.Element
          
 
         
        
          
           
           
        
          An object representing the contents in a
          SOAPBody object, the contents in a
          SOAPHeader object, the content that can follow the
          SOAPBody object in a SOAPEnvelope object,
          or what can follow the detail element in a SOAPFault
          object. It is the base class for all of the classes that represent
          the SOAP objects as defined in the SOAP specification. 
           An object representing an element of a SOAP message that is
          allowed but not specifically prescribed by a SOAP specification. This
          interface serves as the base interface for those objects that are
          specifically prescribed by a SOAP specification.
         
        
          Methods in this interface that are required to return SAAJ
          specific objects may "silently" replace nodes in the tree as required
          to successfully return objects of the correct type. See getChildElements() and javax.xml.soapfor details.
          
         
        
        
          
            
              | 
                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
               | 
             
          
         
        
        
        
          
            
              | 
                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
               | 
             
          
         
       
      
     
    
       C003
    
    
      
        
          javax.xml.soap 
           Class SOAPPart
        
        
java.lang.Object   |   +--javax.xml.soap.SOAPPart 
         
        
          - 
            All Implemented Interfaces:
          
 
          - 
            org.w3c.dom.Document, org.w3c.dom.Node
          
 
         
        
          - 
            public abstract class SOAPPart
          
 
          - 
            extends java.lang.Object
          
 
          - 
            implements org.w3c.dom.Document
          
 
         
       
      
        
       
      
        
          
            
              | 
                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
               | 
             
          
         
       
      
        
       
      
        
          
            
              | 
                Methods inherited from interface org.w3c.dom.Document
               | 
             
            
              
                createAttribute, createAttributeNS, createCDATASection,
                createComment, createDocumentFragment, createElement,
                createElementNS, createEntityReference,
                createProcessingInstruction, createTextNode, getDoctype,
                getDocumentElement, getElementById, getElementsByTagName,
                getElementsByTagNameNS, getImplementation, importNode
               | 
             
          
         
       
      
        
          
            
              | 
                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
               | 
             
          
         
       
     
    
     
     
    
       C004
    
    
      
        
          javax.xml.soap 
           Interface Text
        
        
          - 
            All Superinterfaces:
          
 
          - 
            org.w3c.dom.CharacterData, Node,
            org.w3c.dom.Node, org.w3c.dom.Text
          
 
         
        
          - 
            public interface Text
          
 
          - 
            extends Node, org.w3c.dom.Text
          
 
         
        
          
           
           
        
        
          
            
              | 
                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
               | 
             
          
         
        
        
        
          
            
              | 
                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.Text
               | 
             
            
              
                splitText
               | 
             
          
         
        
          
            
              | 
                Methods inherited from interface
                org.w3c.dom.CharacterData
               | 
             
            
              
                appendData, deleteData, getData, getLength, insertData,
                replaceData, setData, substringData
               | 
             
          
         
       
     
    
    
    
       
     
    
     
    
      C046
    
    
    
      
        
          In addition the APIs in the javax.xml.soap package
          extend their counterparts in the org.w3c.dom package.
          This means that the SOAPPart of a
          SOAPMessage is also a DOM Level 2 Document,
          and can be manipulated as such by applications, tools and libraries
          that use DOM (see http://www.w3.org/DOM/ for more information). It is
          important to note that, while it is possible to use DOM APIs to add
          ordinary DOM nodes to a SAAJ tree, the SAAJ APIs are still required
          to return SAAJ types when examining or manipulating the tree. In
          order to accomplish this the SAAJ APIs (specifically SOAPElement.getChildElements()) are allowed
          to "silently" replace objects that are incorrectly typed relative to
          SAAJ requirements with equivalent objects of the required type. These
          replacements must never cause the logical structure of the tree to
          change, so from the perspective of the DOM APIs the tree will remain
          unchanged. However, the physical composition of the tree will have
          changed so that references to the nodes that were replaced will refer
          to nodes that are no longer a part of the tree. The SAAJ APIs are not
          allowed to make these replacements if they are not required so the
          replacement objects will never subsequently be "silently" replaced by
          future calls to the SAAJ API. What this means in practical terms is
          that an application that starts to use SAAJ APIs on a tree after
          manipulating it using DOM APIs must assume that the tree has been
          translated into an all SAAJ tree and that any references to objects
          within the tree that were obtained using DOM APIs are no longer
          valid. Switching from SAAJ APIs to DOM APIs is not allowed to cause
          invalid references and neither is using SAAJ APIs exclusively. It is
          only switching from using DOM APIs on a particular SAAJ tree to using
          SAAJ APIs that causes the risk of invalid references.
         
       
     
     
    
     
    
      
        
          javax.xml.soap 
           Class SOAPMessage
        
        
java.lang.Object   |   +--javax.xml.soap.SOAPMessage 
         
        
          - 
            public abstract class SOAPMessage
          
 
          - 
            extends java.lang.Object
          
 
         
        
          
           
        
          
            
              
             
            
              
                abstract java.lang.String
               | 
              
                getProperty(java.lang.String
                property) 
                 Retrieves value of the specified property. 
               | 
             
            
              
                abstract void
               | 
              
                setProperty(java.lang.String
                property, java.lang.Object value) 
                 Associates the specified value with the specified
                property. 
               | 
             
          
         
        
       
      
        
       
     
    
       C005
    
    
      
        
          getProperty
        
        
public abstract java.lang.Object getProperty(java.lang.String property)                                       throws SOAPException 
         
        
          - 
            Retrieves value of the specified property.
          
 
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
property - the name of the property to retrieve
               
              - 
                Returns:
              
 
              - 
                the value of the property or 
null if no such
                property exists.
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if the property
                name is not recognized.
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
             
           
         
         
       
     
    
      C006
    
    
      
        
          setProperty
        
        
public abstract void setProperty(java.lang.String property,
                                 java.lang.Object value)
                          throws SOAPException 
        
        
          - 
            Associates the specified value with the specified property. If
            there was already a value associated with this property, the old
            value is replaced.
            
              The valid property names include WRITE_XML_DECLARATION
              and CHARACTER_SET_ENCODING.
              All of these standard SAAJ properties are prefixed by
              "javax.xml.soap". Vendors may also add implementation specific
              properties. These properties must be prefixed with package names
              that are unique to the vendor.
             
            
              Setting the property WRITE_XML_DECLARATION to
              "true" will cause an XML Declaration to be written
              out at the start of the SOAP message. The default value of
              "false" suppresses this declaration.
             
            
              The property CHARACTER_SET_ENCODING defaults to the
              value "utf-8" which causes the SOAP message to be
              encoded using UTF-8. Setting CHARACTER_SET_ENCODING
              to "utf-16" causes the SOAP message to be encoded
              using UTF-16.
             
            
              Some implementations may allow encodings in addition to UTF-8 and
              UTF-16. Refer to your vendor's documentation for details.
              
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
property - the property with which the specified
                value is to be associated.
               
              - 
                
value - the value to be associated with the
                specified property
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if the property
                name is not recognized.
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
                
 
               
             
           
         
       
     
    
      
        
          
            
              
             
            
              
                static java.lang.String
               | 
              
                CHARACTER_SET_ENCODING 
                 Specifies the character type encoding for the SOAP Message.
               | 
             
            
              
                static java.lang.String
               | 
              
                WRITE_XML_DECLARATION 
                 WRITE_XML_DECLARATION specifies whether the SOAP Message
                should contain an XML declaration; the value must be "true" or
                "false".
               | 
             
          
         
        
          
           
          
        
          
           
        
       
     
    
      C007
    
    
      
        
          CHARACTER_SET_ENCODING
        
        
public static final java.lang.String CHARACTER_SET_ENCODING 
         
        
          - 
            Specifies the character type encoding for the SOAP Message. Valid
            values include "utf-8" and "utf-16". See vendor documentation for
            additional supported values. The default is "utf-8".
          
 
          - 
            
 
           
          - 
            
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
SOAPMessage.setProperty,
                Constant
                Field Values
               
             
           
         
        
        
         
       
     
    
      C008
    
    
      
        
          WRITE_XML_DECLARATION
        
        
public static final java.lang.String WRITE_XML_DECLARATION 
         
        
          - 
            Specifies whether the SOAP Message should contain an XML
            declaration. The only valid values are "true" and "false". The
            default is "false".
          
 
          - 
            
 
           
          - 
            
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
SOAPMessage.setProperty,
                Constant
                Field Values
               
             
           
         
         
         
        
           
            Constant Field Values
          
        
        
       
     
    
       
     
     
    
    
      C009
    
    
      Change JavaDoc:
     
    
      
        
          javax.xml.soap 
           Interface Node
        
       
     
    
      
        
          
            
              
             
            
              
                void
               | 
              
                detachNode() 
                 Removes this Node object from the tree.
                Once removed, this node can be garbage collected if
                there are no application references to it.
               | 
             
          
         
       
      
     Rationale: This was too much of a restriction on
    implementors. 
     
    
      C010
    Add method: 
    
      
        
          javax.xml.soap 
           Interface Node
        
       
      
        
          
            
              
             
            
              
                void
               | 
              
                setValue(java.lang.String
                value) 
                 If this is a Text node then this method will set
                its value, otherwise it sets the value of the immediate
                (Text) child of this node. 
               | 
             
          
         
        
       
     
    
      
        
          setValue
        
        
public void setValue(java.lang.String value)
 
        
          - 
            If this is a Text node then this method will set its value,
            otherwise it sets the value of the immediate (Text) child of this
            node. The value of the immediate child of this node can be set only
            if, there is one child node and that node is a 
Text
            node, or if there are no children in which case a child
            Text node will be created.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Throws:
              
 
              - 
                
java.lang.IllegalStateException - if the node is
                not a Text node and either has more than one child
                node or has a child node that is not a Text node.
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                
 
               
             
           
         
       
      
     Rationale: This simplifies a common case where
    developers want to change a value in a tree without changing the structure
    of the tree. The equivalent operation, using only SAAJ APIs, is thought by
    some to be cumbersome and error prone. 
    
      
         
       
     Add methods:
    
      
        
          javax.xml.soap 
           Interface SOAPFault
        
        
          - 
            
 
           
         
        
          
           
           
        
          
            
              
             
            
              
                Name
               | 
              
                getFaultCodeAsName() 
                 Gets the mandatory SOAP 1.1 fault code for this
                SOAPFault object as a SAAJ Name
                object.
               | 
             
            
              
                void
               | 
              
                setFaultCode(
                Name faultCodeQName) 
                 Sets this SOAPFault object with the given fault
                code.
               | 
             
            
              
                void 
               | 
              
                setFaultString(java.lang.String
                faultString, java.util.Locale locale) 
                 Sets the fault string for this SOAPFault object
                to the given string and localized to the given locale. 
               | 
             
            
              
                java.util.Locale 
               | 
              
                getFaultStringLocale() 
                 Gets the locale of the fault string for this
                SOAPFault object. 
               | 
             
          
          
         
         
         
        
          
           
           
           
        
       
     
    
      C011
    
    
      
        
          getFaultCodeAsName
        
        
public Name getFaultCodeAsName()
 
        
          - 
            Gets the mandatory SOAP 1.1 fault code for this
            
SOAPFault object as a SAAJ Name object.
            The SOAP 1.1 specification requires the value of the "faultcode"
            element to be of type QName. This method returns the content of the
            element as a QName in the form of a SAAJ Name object. This method
            should be used instead of the getFaultCode method
            since it allows applications to easily access the namespace name
            without additional parsing.
            
              In the future, a QName object version of this method may also be
              added.
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                a 
Name representing the faultcode
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
setFaultCode(Name)
               
             
           
         
        
          - 
            
 
           
          - 
            
              - 
                
 
               
             
           
         
         
       
     
    
      C012
    
    
      
        
          setFaultCode
        
        
public void setFaultCode(Name faultCodeQName) throws SOAPException 
         
        
          - 
            Sets this 
SOAPFault object with the given fault code.
            
              Fault codes, which give information about the fault, are defined
              in the SOAP 1.1 specification. A fault code is mandatory and must
              be of type QName. This method provides a convenient
              way to set a fault code. For example,
             
            
 SOAPEnvelope se = ...;
 // Create a qualified name in the SOAP namespace with a localName
 // of "Client".  Note that prefix parameter is optional and is null
 // here which causes the implementation to use an appropriate prefix.
 Name qname = se.createName("Client", null,
                             SOAPConstants.URI_NS_SOAP_ENVELOPE);
 SOAPFault fault = ...; 
 fault.setFaultCode(qname);
It is preferable to use this method over setFaultCode(String).
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
faultCodeQName - a Name object giving
                the fault code to be set.It must be namespace qualified.
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there was an
                error in adding the faultcode element to the
                underlying XML tree.
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
getFaultCodeAsName()
               
             
           
         
        
          - 
            
 
           
          - 
            
              - 
                
 
               
             
           
         
         
       
     
    
      C013
    
    
      
        
          setFaultString
        
        
public void setFaultString(java.lang.String faultString,
                            java.util.Locale locale)
                    throws SOAPException
        
        
          - 
            Sets the fault string for this 
SOAPFault object to the
            given string and localized to the given locale.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
faultString - a String giving an
                explanation of the fault
               
              - 
                
locale - a Locale object indicating
                the native language of the faultString
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there was an
                error in adding the faultString to the underlying
                XML tree.
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
getFaultString()
               
             
           
         
         
       
     
    
      C014
    
    
      
        
          getFaultStringLocale
        
        
public java.util.Locale getFaultStringLocale()
 
        
          - 
            Gets the locale of the fault string for this 
SOAPFault
            object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                a 
Locale object indicating the native language of
                the fault string or null if no locale was
                specified
               
              - 
                
 
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
                setFaultString(String, Locale)
               
             
           
         
         
       
     Rationale: These two methods allow the
    fault code to be treated as a fully qualified name, as required by SOAP
    1.1.  
    
      
         
         
       
     
    
      C015
    
    
      Add method:
     
    
      
        
          javax.xml.soap 
           Interface SOAPBody
        
        
          
           
           
           
         
        
          addDocument
        
        
public SOAPBodyElement addDocument(org.w3c.dom.Document document)
 
        
          - 
            Adds the root node of the DOM 
Document to this
            SOAPBody object.
           
         
       
     
    
      
        
          
            C016
          
         
       
     
    
      
        
          - 
            
              Calling this method invalidates the document
              parameter. The client application should discard all references
              to this Document and its contents upon calling
              addDocument. The behavior of an application that
              continues to use such references is undefined. [end of
              C045]
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                
 
               
              - 
                Parameters:
              
 
              - 
                
document - the Document object whose
                root node will be added to this SOAPBody.
               
              - 
                Returns:
              
 
              - 
                the 
SOAPBodyElement that represents the root node
                that was added.
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if the
                Document cannot be added
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
             
           
         
       
     
    
      Rationale: This user requested method makes it
      easier to use DOM in SAAJ applications. Without this method the end user
      must rely entirely on DOM APIs to perform this operation. C045 allows a
      wider range of implementation choices including possible optimizations at
      the expense of some usability.
     
    
      
         
       
     
    
      C047
    
    
      Add methods:
     
    
      
        
          javax.xml.soap 
           Interface SOAPBody
        
        
          
           
           
           
       
      
         
        
          addFault
        
        
public SOAPFault addFault(Name faultCode,
                          java.lang.String faultString,
                          java.util.Locale locale)
                          throws SOAPException
        
          - 
            Creates a new 
SOAPFault object and adds it to this
            SOAPBody object. The new SOAPFault will
            have a faultcode element that is set to the
            faultCode parameter and a faultstring set
            to faultString and localized to locale.
            
              A SOAPBody may contain at most one
              SOAPFault child element
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
faultCode - a Name object giving the
                fault code to be set; must be one of the fault codes defined in
                the SOAP 1.1 specification and of type QName
               
              - 
                
faultString - a String giving an
                explanation of the fault
               
              - 
                
locale - a Locale object indicating
                the native language of the faultString
               
              - 
                Returns:
              
 
              - 
                the new 
SOAPFault object
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there is a
                SOAP error
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
SOAPFault.setFaultCode(javax.xml.soap.Name),
                SOAPFault.setFaultString(java.lang.String)
               
             
           
         
         
        
        
          addFault
        
        
public SOAPFault addFault(Name faultCode,
                          java.lang.String faultString)
                   throws SOAPException
        
          - 
            Creates a new 
SOAPFault object and adds it to this
            SOAPBody object. The new SOAPFault will
            have a faultcode element that is set to the
            faultCode parameter and a faultstring set
            to faultString.
            
              A SOAPBody may contain at most one
              SOAPFault child element
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Parameters:
              
 
              - 
                
faultCode - a Name object giving the
                fault code to be set; must be one of the fault codes defined in
                the SOAP 1.1 specification and of type QName
               
              - 
                
faultString - a String giving an
                explanation of the fault
               
              - 
                Returns:
              
 
              - 
                the new 
SOAPFault object
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there is a
                SOAP error
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
SOAPFault.setFaultCode(javax.xml.soap.Name),
                SOAPFault.setFaultString(java.lang.String)
               
             
           
         
         
       
     
    
      Rationale: Use of these methods would let developers
      create faults that contain all of the necessary sub-elements, properly
      initialized, with a single call.
     
     
     
      
    
      C017
    
    
      Add method:
     
    
      
        
          javax.xml.soap 
           Interface SOAPElement
         
        
          
           
           
           
         
         
         
         
        
          removeContents
        
        
public void removeContents()
  
         Detaches all children of this SOAPElement.
        
          This method is useful for rolling back the construction of partially
          completed SOAPHeaders and SOAPBodys in
          preparation for sending a fault when an error condition is detected.
          It is also useful for recycling portions of a document within a SOAP
          message.
         
        
          - 
            Since:
          
 
          - 
            SAAJ 1.2
          
 
         
       
     
    
      Rationale: This method supports a common use case
      where elements in a partially assembled body are replaced with a fault in
      response to an error condition. It originated in the SOAPBody interface
      and was pulled up into SOAPElement because of its general utility.
     
    
      
         
       
     
    
      C018
    
    
      Add method:
     
    
      
        
          javax.xml.soap 
           Interface SOAPElement
         
        
          
           
           
           
         
         
         
        
          getVisibleNamespacePrefixes
        
        
public java.util.Iterator getVisibleNamespacePrefixes()
 
        
          - 
            Returns an 
Iterator over the namespace prefix
            Strings visible to this element. The prefixes returned
            by this iterator can be passed to the method
            getNamespaceURI to retrieve the URI of each namespace.
           
          - 
            
              - 
                Returns:
              
 
              - 
                an iterator over the namespace prefixes that are within scope
                of this 
SOAPElement object
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
             
           
         
       
     Rationale: This is a common operation. It
    is likely that vendors can provide an implementation that is more efficient
    than what can be obtained directly from the other SAAJ or DOM APIs. 
    
      
         
       
     
    
      Add methods:
     
    
      
        
          javax.xml.soap 
           Interface SOAPHeader
        
       
     
    
      
        
        
        
          
            
              
             
            
              
                java.util.Iterator
               | 
              
                examineAllHeaderElements() 
                 Returns an Iterator over all the
                SOAPHeaderElement objects in this
                SOAPHeader object.
               | 
             
            
              
                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.
               | 
             
          
         
       
     
    
      C019
    
    
      
        
          examineAllHeaderElements
        
        
public java.util.Iterator examineAllHeaderElements()
 
        
          - 
            Returns an 
Iterator over all the
            SOAPHeaderElement objects in this
            SOAPHeader object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                an 
Iterator object over all the
                SOAPHeaderElement objects contained by this
                SOAPHeader
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
extractAllHeaderElements()
               
             
           
         
         
       
     
    
      C020
    
    
      
        
          examineMustUnderstandHeaderElements
        
        
public 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.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                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
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
                examineHeaderElements(java.lang.String),
                
                extractHeaderElements(java.lang.String),
                SOAPConstants.URI_SOAP_ACTOR_NEXT
               
             
           
         
         
       
     
    
      C021
    
    
      
        
          extractAllHeaderElements
        
        
public java.util.Iterator extractAllHeaderElements()
 
        
          - 
            Returns an 
Iterator over all the
            SOAPHeaderElement objects in this
            SOAPHeader object and detaches them from this
            SOAPHeader object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                an 
Iterator object over all the
                SOAPHeaderElement objects contained by this
                SOAPHeader
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
              - 
                See Also:
              
 
              - 
                
examineAllHeaderElements()
               
             
           
         
        
         
     
    
      Rationale: The ability to examine or extract all
      header elements gives an application flexibility to implement its own
      processing model. Applications implementing SOAP processing will need to
      be able to examine all of the header elements marked must understand in
      order to correctly fulfill the must understand contract. The
      examineMustUnderstandHeaderElements(String) method provides easy and
      correct access to this piece of necessary and routine processing.
     
    
      
         
       
     
    
      Add methods:
     
    
      
        
          javax.xml.soap 
           Class SOAPMessage
        
       
      
        
        
      
        
       
     
    
      C022
    
    
      
        
          getSOAPBody
        
        
public abstract SOAPBody getSOAPBody()
 
        
          - 
            Gets the SOAP Body contained in this 
SOAPMessage
            object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                the 
SOAPBody object contained by this
                SOAPMessage object
               
              - 
                
 
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if the SOAP
                Body does not exist or cannot be retrieved
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
             
           
         
         
       
     
    
      C023
    
    
      
        
          getSOAPHeader
        
        
public abstract SOAPHeader getSOAPHeader()
 
        
          - 
            Gets the SOAP Header contained in this 
SOAPMessage
            object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                the 
SOAPHeader object contained by this
                SOAPMessage object
               
              - 
                
 
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if the SOAP
                Header does not exist or cannot be retrieved
               
              - 
                Since:
              
 
              - 
                SAAJ 1.2
              
 
             
           
         
         
       
     
    
    
      Rationale: These methods make writing SAAJ clients
      easier by eliminating the getSOAPPart().getEnvelope() call sequence for
      gaining access to the header and body elements of the message. This
      allows developers to focus on their application needs rather than the
      details of the structure of SOAP messages.
     
    
      
         
       
      
    
       
     
     
    
    
      
        
          javax.xml.soap 
           Interface Detail
        
        
       
     
    
      C024
    
    
      
        
          getDetailEntries
        
        
public java.util.Iterator getDetailEntries()
 
        
          - 
            
Gets a list of detail entries Gets an Iterator
            over all of the DetailEntrys in this
            Detail object.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                an 
Iterator object over the
                DetailEntry objects in this Detail
                object
               
             
           
         
       
     Rationale:The actual return type is an
    Iterator, not a List. 
     
    
      
        
          javax.xml.soap 
           Class MessageFactory
        
         
       
     
    
      C025
    
    
      
        
          - 
            public abstract class MessageFactory
          
 
          - 
            extends java.lang.Object
          
 
         
        
          A factory for creating SOAPMessage objects. A
          JAXM client performs the following steps to create a
          message.
         
        It is also possible to create a
        MessageFactory object
        
          A SAAJ client can create a MessageFactory object
          using the method newInstance, as shown in the following
          line of code.
         
        
          [...] If a MessageFactory object was created
          using a ProviderConnection object, which means that it
          was initialized with a specified profile, it
          MessageFactory objects can be initialized with a JAXM
          profile. In such a case it will produce messages that also come
          prepopulated with additional entries in the SOAPHeader
          object and the SOAPBody object. 
           [...]
         
       
     Rationale: SAAJ is independent of JAXM.
    While it is appropriate to mention the available interactions between the
    two, it is misleading to suggest that JAXM APIs are the endorsed mechanism
    for accessing the SAAJ factory classes.
     
    
      
        
          javax.xml.soap 
           Class MimeHeaders
        
         
       
     
    
      C026
    
    
      
        
          
            
              
             
            
              
                java.util.Iterator
               | 
              
                getAllHeaders() 
                 Returns all the headers
                MimeHeader objects in this
                MimeHeaders object.
               | 
             
          
         
       
     
    
      Rationale:The method summaries for methods that
      return Iterators should indicate the types of the objects contained by
      the iterated collections. Otherwise clients will be unable to use the
      objects returned by the iteration process.
     
     
    
      
        
          javax.xml.soap 
           Interface Name
        
         
        
       
     
    
      C027
    
    
      
        
          getPrefix
        
        
public java.lang.String getPrefix()
 
        
          - 
            
Returns the prefix associated with the namespace for the
            XML Returns the prefix that was specified when this
            Name object was initialized. This prefix is associated
            with the namespace for the XML name that this Name
            object represents.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                the prefix as a string
              
 
             
           
         
       
     
    
      Rationale:The phrase "the prefix" was ambiguous
      since there may be zero or many prefixes associated with a given
      namespace within a given context. This change helps to clarify that a
      Name is a simple value, unassociated with any context and providing no
      claims with respect to the validity of its prefix. The TCK already
      enforces this interpretation of the original wording. This is simply a
      clarification of the original intent. It is also consistent with the
      thinking that is driving the evolution of the QName class.
     
    
      
         
        
          javax.xml.soap 
           Interface Node
        
        
       
     
    
      C028
    
    
      
        
          getValue
        
        
public java.lang.String getValue()
 
        
          - 
            
Returns the value of the immediate child of this
            Node object if a child exists and its value is
            text.
           
          - 
            Returns the value of this node if this is a 
Text
            node or the value of the immediate child of this node otherwise. If
            there is an immediate child of this Node that it is a
            Text node then it's value will be returned. If there
            is more than one Text node then the value of the first
            Text Node will be returned. Otherwise
            null is returned.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                
a String with the text of the immediate
                child of this Node object if (1) there is a child
                and (2) the child is a Text object;
                null otherwise
               
              - 
                a 
String with the text of this node if this is
                a Text node or the text contained by the first
                immediate child of this Node object that is a
                Text object if such a child exists;
                null otherwise.
               
             
           
         
       
     
    
      Rationale:This reflects the actual behavior of the
      Reference Implementation, the original intent of the specification, the
      equivalent behavior of DOM, and what we believe the end user will expect.
      It does represent a new behavior rather than a new restriction which
      raises the possibility of broken backward compatibility, however, in
      light of the facts listed above coupled with the fact that the TCK
      already allows this behavior (or else the Reference Implementation would
      not have passed) we believe that it is both safe and desirable to make
      this change.
     
    
       
      
        
          javax.xml.soap 
           Interface SOAPBody
        
        
          
           
           
           
        
       
     
    
      C029
    
    
      
        
          addFault
        
        
public SOAPException 
         
        
          - 
            Creates a new 
SOAPFault object and adds it to this
            SOAPBody object. The new
            SOAPFault will have default values set for the
            mandatory child elements faultcode and
            faultstring.
            
              A SOAPBody may contain at most
              oneSOAPFault child element.
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                the new 
SOAPFault object
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there is a
                SOAP error
               
             
           
         
       
     
    
      Rationale:This reflects restrictions present in the
      SOAP 1.1 specification.
     
     
    
      
        
          javax.xml.soap 
           Class SOAPConnection
        
         
       
     
    
      C030
    
    
      
        
          - 
            public abstract class SOAPConnection
          
 
          - 
            extends java.lang.Object
          
 
         
        
          A point-to-point connection that a client can use for sending
          messages directly to a remote party (represented by a URL, for
          instance).
         
        
          A client can obtain a SOAPConnection object
          simply by calling the following static method.
         
        
SOAPConnection con = SOAPConnection.newInstance(); 
         
        
           
           A client can obtain a SOAPConnection object using a
          SOAPConnectionFactory object as in
          the following example:
         
        
      SOAPConnectionFactory factory = SOAPConnectionFactory.newInstance();
      SOAPConnection con = factory.createConnection();
        A SOAPConnection object can be used to send messages
        directly to a URL following the request/response paradigm. That is,
        messages are sent using the method call, which sends the
        message and then waits until it gets a reply.
       
     
    
      Rationale:The original JavaDoc was wrong.
     
    
       
      
        
          javax.xml.soap 
           Class SOAPConnectionFactory
        
         
       
     
    
      C031
    
    
      
        
          - 
            public abstract class SOAPConnectionFactory
          
 
          - 
            extends java.lang.Object
          
 
         
        
          A factory for creating SOAPConnection objects.
          Implementation of this class is optional. If
          SOAPConnectionFactory.newInstance() throws an
          UnsupportedOperationException then the implementation does not
          support the SAAJ communication infrastructure. Otherwise SOAPConnection objects can be created by
          calling createConnection() on the newly created
          SOAPConnectionFactory object.
         
       
     
    
      Rationale:There was no JavaDoc class comment for
      this class before. This comment clearly states the optional nature of the
      SAAJ communication artifacts and exposes the mechanism that allows them
      to be optional.
     
     
    
      
        
          javax.xml.soap 
           Interface SOAPConstants
        
        
          
           
        
       
     
    
      C032
    
    
      
        
          URI_NS_SOAP_ENVELOPE
        
        
public static final java.lang.String URI_NS_SOAP_ENVELOPE 
         
        
          - 
            The namespace identifier for the SOAP 1.1 envelope. All
            
SOAPElements in this namespace are defined by the SOAP
            1.1 specification.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                See Also:
              
 
              - 
                Constant
                Field Values
              
 
             
           
         
         
       
     
    
      C033
    
    
      
        
          URI_NS_SOAP_ENCODING
        
        
public static final java.lang.String URI_NS_SOAP_ENCODING 
         
        
          - 
            The namespace identifier for the SOAP 1.1 encoding. An attribute
            named 
encodingStyle in the
            URI_NS_SOAP_ENVELOPE namespace and set to the value
            URI_NS_SOAP_ENCODING can be added to an element to
            indicate that it is encoded using the rules in section 5 of the
            SOAP 1.1 specification.
           
          - 
            
 
           
          - 
            
              - 
                See Also:
              
 
              - 
                Constant
                Field Values
              
 
             
           
         
         
       
     
    
      C034
    
    
      
        
          URI_SOAP_ACTOR_NEXT
        
        
public static final java.lang.String URI_SOAP_ACTOR_NEXT 
         
        
          - 
            The URI identifying the 
first next
            application processing a SOAP request as the intended actor for a
            SOAP 1.1 header entry (see section 4.2.2 of the SOAP 1.1
            specification).
            
              This value can be passed to 
              SOAPHeader.examineMustUnderstandHeaderElements(String),
              
              SOAPHeader.examineHeaderElements(String)
              and 
              SOAPHeader.extractHeaderElements(String)
             
           
          - 
            
 
           
          - 
            
              - 
                See Also:
              
 
              - 
                Constant
                Field Values
              
 
             
           
         
         
       
     
    
      Rationale:These are just informational changes. They
      do not change the meaning of the specification at all.
     
     
    
      
        
          javax.xml.soap 
           Interface SOAPElement
        
         
       
     
    
      
        
          - 
            public interface SOAPElement
          
 
          - 
            extends Node, org.w3c.dom.Element
          
 
         
        
          
           
           
        
          
            
              
             
            
              
                SOAPElement
               | 
              
                
                  C035
                addChildElement(java.lang.String
                localName) 
                 Creates a new SOAPElement object initialized with
                the given String specified
                local name and adds the new element to this
                SOAPElement object.
               | 
             
            
              
                java.util.Iterator
               | 
              
                
                  C036
                getAllAttributes() 
                 Returns an iterator over all of the attribute
                names Iterator over all of the
                attribute Name objects in this
                SOAPElement object.
               | 
             
            
              
                java.util.Iterator
               | 
              
                
                  C037
                getChildElements() 
                 Returns an iterator over all the immediate content of
                this element.  
                 Returns an Iterator over all the immediate child
                Nodes of
                this element. This includes Text objects as
                well as SOAPElement objects. 
                
                  Calling this method may cause child Element,
                  SOAPElement and org.w3c.dom.Text
                  nodes to be replaced by SOAPElement,
                  SOAPHeaderElement, SOAPBodyElement
                  or javax.xml.soap.Text nodes as appropriate for
                  the type of this parent node. As a result the calling
                  application must treat any existing references to these child
                  nodes that have been obtained through DOM APIs as invalid and
                  either discard them or refresh them with the values returned
                  by this Iterator. This behavior can be avoided
                  by calling the equivalent DOM APIs. See javax.xml.soapfor more details.
                  
               | 
             
            
              
                java.util.Iterator 
               | 
              
                
                  C038
                getChildElements(
                Name name) 
                 Returns an iterator over all the child elements with
                the specified name. Returns an
                Iterator over all the immediate child Nodes of this
                element with the specified name. All of these children
                will be SOAPElement nodes.
                
                  Calling this method may cause child Element,
                  SOAPElement and org.w3c.dom.Text
                  nodes to be replaced by SOAPElement,
                  SOAPHeaderElement, SOAPBodyElement
                  or javax.xml.soap.Text nodes as appropriate for
                  the type of this parent node. As a result the calling
                  application must treat any existing references to these child
                  nodes that have been obtained through DOM APIs as invalid and
                  either discard them or refresh them with the values returned
                  by this Iterator. This behavior can be avoided
                  by calling the equivalent DOM APIs. See javax.xml.soapfor more details.
                  
               | 
             
            
              
                java.util.Iterator
               | 
              
                
                  C039
                getNamespacePrefixes() 
                 Returns an iterator of namespace prefixes
                Iterator over the namespace prefix
                Strings declared by this element. The prefixes
                returned by this iterator can be passed to the method
                getNamespaceURI to retrieve the URI of each
                namespace.
               | 
             
          
         
       
     
    
      Rationale: Clarifies that the String
      parameter of addChildElement is intended to be the name of
      the new element -- not its value, and specifies the types to expect to be
      able to extract from Iterator return values. C037 and C038
      clarify the consequences of moving nodes around in the SAAJ tree and the
      option of avoiding these consequences via DOM interfaces.
     
     
    
      
        
          javax.xml.soap 
           Class SOAPException
        
        
        
          initCause
        
        
public java.lang.Throwable initCause(java.lang.Throwable cause)
 
        
          - 
            [...]
          
 
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                
 
               
             
           
         
       
     
    
      C040
    
    
      
        
          - 
            
 
           
          - 
            
              - 
                Throws:
              
 
              - 
                
[...]
               
              - 
                
java.lang.IllegalStateException - if this
                SOAPException object was created with SOAPException(Throwable) or SOAPException(String,Throwable), or this method
                has already been called on this SOAPException
                object
               
              - 
                if the cause for this 
SOAPException object has
                already been initialized
               
             
           
         
       
     
    
      Rationale:Tightens up the language.
     
     
    
      
        
          javax.xml.soap 
           Interface SOAPHeader
        
        
          
            
              
             
            
              
                java.util.Iterator
               | 
              
                
                  C041
                examineHeaderElements(java.lang.String
                actor) 
                 Returns a list of all the
                SOAPHeaderElement objects Returns an
                Iterator over all the
                SOAPHeaderElement objects in this
                SOAPHeader object that have the specified
                actor.
               | 
             
            
              
                java.util.Iterator
               | 
              
                
                  C042
                extractHeaderElements(java.lang.String
                actor) 
                 Returns a list of all the
                SOAPHeaderElement objects Returns an
                Iterator over all the
                SOAPHeaderElement objects in this
                SOAPHeader object that have the specified
                actor and detaches them from this SOAPHeader
                object.
               | 
             
          
         
       
     
    
      Rationale:These methods return iterators, not
      lists.
     
     
    
    
      
        
          javax.xml.soap 
           Class SOAPMessage
        
        
          saveRequired
        
        
public abstract boolean saveRequired()
 
       
     
    
      C043
    
    
      
        
          - 
            
Indicates whether this SOAPMessage object has
            had the method saveChanges called on it.
            Indicates whether this SOAPMessage object needs to
            have the method saveChanges called on it.
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                
true if
                saveChanges has been called on
                this message at least once; true if
                saveChanges needs to be called;
                false otherwise.
               
             
           
         
         
       
     
    
      Rationale:Original wording was almost the exact
      opposite of the intent.
     
     
    
      
        
        
          javax.xml.soap 
           Class AttachmentPart
        
        
java.lang.Object   |   +--javax.xml.soap.AttachmentPart 
         
        
        
          getContent
        public abstract java.lang.Object getContent() throws
        SOAPException
        
          - 
            [...]
          
 
         
       
     
    
      C044
    
    
      
        
          - 
            
              A JAXMSAAJ-compliant implementation must,
              as a minimum, return a java.lang.String object
              corresponding to any content stream with a
              Content-Type value of text/plain, a
              javax.xml.transform.stream.StreamSource
              object corresponding to a content stream with a
              Content-Type value of text/xml, a
              java.awt.Image object corresponding to a content
              stream with a Content-Type value of
              image/gif or image/jpeg. For those
              content types that an installed DataContentHandler
              object does not understand, the DataContentHandler
              object is required to return a java.io.InputStream
              object with the raw bytes.
             
           
          - 
            
 
           
          - 
            
 
           
          - 
            
              - 
                Returns:
              
 
              - 
                a Java object with the content of this
                
AttachmentPart object
               
              - 
                Throws:
              
 
              - 
                
SOAPException - if there is no
                content set into this AttachmentPart object or if
                there was a data transformation error
               
             
           
         
       
     
    
      
         
       
     
    
      Rationale: This is the SAAJ API not JAXM. The
      package name was wrong.
     
     
    
      
        
        
          javax.xml.soap 
           Class SOAPPart
        
        
java.lang.Object   |   +--javax.xml.soap.SOAPPart 
         
        
          - 
            
 
           
         
        
        
          setContent
        
        
public abstract void setContent(javax.xml.transform.Source source)
                         throws SOAPException
        
        
          - 
            
 
           
         
       
     
    
      C045
    
    
      
        - 
          
 
         
        - 
          
            - 
              Sets the content of the 
SOAPEnvelope object with the
              data from the given Source object. This
              Source must contain a valid SOAP document.
             
            - 
              
 
             
            - 
              
 
             
            - 
              
                - 
                  Throws:
                
 
                - 
                  
SOAPException - if
                  there is a problem in setting the source
                 
                - 
                  See Also:
                
 
                - 
                  
getContent()
                 
               
             
           
         
       
     
    
      
         
       
     
    
      Rationale: It was not clear that the SOAPPart could
      contain only a SOAP document.
     
     
     
    
    
      - 
        Deprecating the Name interface in favor of the QName class.
 
         Rationale: The QName class is currently in the process of being
        upgraded and moved into a more appropriate package. While it would be
        appropriate for SAAJ to adopt QName as it's preferred representation of
        XML qualified names, it makes sense for us to defer this move until the
        changes to QName are complete. Since the adoption of QName will have no
        impact on WS-I compatibility it is not urgent that we make this change
        at this time.
       
      
      
      
      
      
  
 |