javax.xml.soap

## Class SAAJResult

- java.lang.Object
- - javax.xml.transform.dom.DOMResult
  - - javax.xml.soap.SAAJResult

- All Implemented Interfaces:
    Result

      public class SAAJResult
      extends DOMResult

  Acts as a holder for the results of a JAXP transformation or a JAXB marshalling, in the form of a SAAJ tree. These results should be accessed by using the `getResult()` method. The `DOMResult.getNode()` method should be avoided in almost all cases.
  Since:
    SAAJ 1.3

- - ### Field Summary

    - ### Fields inherited from class javax.xml.transform.dom.DOMResult

      `FEATURE`

    - ### Fields inherited from interface javax.xml.transform.Result

      `PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SAAJResult()` | Creates a `SAAJResult` that will present results in the form of a SAAJ tree that supports the default (SOAP 1.1) protocol.
    `SAAJResult(SOAPElement rootNode)` | Creates a `SAAJResult` that will write the results as a child node of the `SOAPElement` specified.
    `SAAJResult(SOAPMessage message)` | Creates a `SAAJResult` that will write the results into the `SOAPPart` of the supplied `SOAPMessage`.
    `SAAJResult(String protocol)` | Creates a `SAAJResult` that will present results in the form of a SAAJ tree that supports the specified protocol.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Node` | `getResult()` |

    - ### Methods inherited from class javax.xml.transform.dom.DOMResult

      `getNextSibling, getNode, getSystemId, setNextSibling, setNode, setSystemId`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SAAJResult

          public SAAJResult()
                     throws SOAPException

      Creates a `SAAJResult` that will present results in the form of a SAAJ tree that supports the default (SOAP 1.1) protocol.

      This kind of `SAAJResult` is meant for use in situations where the results will be used as a parameter to a method that takes a parameter whose type, such as `SOAPElement`, is drawn from the SAAJ API. When used in a transformation, the results are populated into the `SOAPPart` of a `SOAPMessage` that is created internally. The `SOAPPart` returned by `DOMResult.getNode()` is not guaranteed to be well-formed.

      Throws:
        `SOAPException` - if there is a problem creating a `SOAPMessage`
      Since:
        SAAJ 1.3

    - #### SAAJResult

          public SAAJResult(String protocol)
                     throws SOAPException

      Creates a `SAAJResult` that will present results in the form of a SAAJ tree that supports the specified protocol. The `DYNAMIC_SOAP_PROTOCOL` is ambiguous in this context and will cause this constructor to throw an `UnsupportedOperationException`.

      This kind of `SAAJResult` is meant for use in situations where the results will be used as a parameter to a method that takes a parameter whose type, such as `SOAPElement`, is drawn from the SAAJ API. When used in a transformation the results are populated into the `SOAPPart` of a `SOAPMessage` that is created internally. The `SOAPPart` returned by `DOMResult.getNode()` is not guaranteed to be well-formed.

      Parameters:
        `protocol` - - the name of the SOAP protocol that the resulting SAAJ tree should support
      Throws:
        `SOAPException` - if a `SOAPMessage` supporting the specified protocol cannot be created
      Since:
        SAAJ 1.3

    - #### SAAJResult

          public SAAJResult(SOAPMessage message)

      Creates a `SAAJResult` that will write the results into the `SOAPPart` of the supplied `SOAPMessage`. In the normal case these results will be written using DOM APIs and, as a result, the finished `SOAPPart` will not be guaranteed to be well-formed unless the data used to create it is also well formed. When used in a transformation the validity of the `SOAPMessage` after the transformation can be guaranteed only by means outside SAAJ specification.
      Parameters:
        `message` - - the message whose `SOAPPart` will be populated as a result of some transformation or marshalling operation
      Since:
        SAAJ 1.3

    - #### SAAJResult

          public SAAJResult(SOAPElement rootNode)

      Creates a `SAAJResult` that will write the results as a child node of the `SOAPElement` specified. In the normal case these results will be written using DOM APIs and as a result may invalidate the structure of the SAAJ tree. This kind of `SAAJResult` should only be used when the validity of the incoming data can be guaranteed by means outside of the SAAJ specification.
      Parameters:
        `rootNode` - - the root to which the results will be appended
      Since:
        SAAJ 1.3

  - ### Method Detail

    - #### getResult

          public Node getResult()

      Returns:
        the resulting Tree that was created under the specified root Node.
      Since:
        SAAJ 1.3

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.