Because they are low-level objects, Provider
implementations cannot use the same
JAXB generated types as the higher level consumer APIs. Provider
implementations work with
the following types of objects:
A Provider
implementation can accept and return objects that are derived from the javax.xml.transform.Source
interface. Source
objects are low level objects that hold XML documents. Each Source
implementation provides methods that access the stored XML documents and manipulate its contents. The following objects implement the Source
interface:
DOMSource
Holds XML messages as a Document Object Model(DOM) tree. The XML message is stored as a set of
Node
objects that are accessed using the getNode()
method.
Nodes can be either updated or added to the DOM tree using the setNode()
method.
SAXSource
Holds XML messages as a Simple API for XML (SAX) object. SAX objects contain an
InputSource
object that holds the raw data and an XMLReader
object that parses the raw data.
StreamSource
Holds XML messages as a data stream. The data stream can be manipulated the same as any other data stream.
![]() | Important |
---|---|
When using |
Provider
implementations can use
javax.xml.soap.SOAPMessage
objects when the following conditions are true:
The Provider
implementation is using the SOAP binding
The Provider
implementation is using message mode
A SOAPMessage
object holds a SOAP message. They contain one
SOAPPart
object and zero or more AttachmentPart
objects. The
SOAPPart
object contains the SOAP specific portions of the SOAP message including the SOAP
envelope, any SOAP headers, and the SOAP message body. The AttachmentPart
objects contain
binary data that is passed as an attachment.
Provider
implementations can use objects that implement the javax.activation.DataSource
interface when the following conditions are true:
The implementation is using the HTTP binding
The implementation is using message mode
DataSource
objects provide a mechanism for working with MIME typed data from a
variety of sources, including URLs, files, and byte arrays.