javax.xml.soap
public abstract class SOAPPart extends Object implements Document
The container for the SOAP-specific portion of a
SOAPMessage object. All messages are required to have a
SOAP part, so when a SOAPMessage object is
created, it will automatically have a SOAPPart
object.
A SOAPPart object is a MIME part and has the
MIME headers Content-Id, Content-Location, and Content-Type.
Because the value of Content-Type must be "text/xml", a
SOAPPart object automatically has a MIME header of
Content-Type with its value set to "text/xml". The value must
be "text/xml" because content in the SOAP part of a message
must be in XML format. Content that is not of type "text/xml"
must be in an AttachmentPart object rather than in
the SOAPPart object.
When a message is sent, its SOAP part must have the MIME header Content-Type set to "text/xml". Or, from the other perspective, the SOAP part of any message that is received must have the MIME header Content-Type with a value of "text/xml".
A client can access the SOAPPart object of a
SOAPMessage object by calling the method
SOAPMessage.getSOAPPart. The following line of code, in
which message is a SOAPMessage
object, retrieves the SOAP part of a message.
SOAPPart soapPart = message.getSOAPPart();
A SOAPPart object contains a
SOAPEnvelope object, which in turn contains a
SOAPBody object and a SOAPHeader object.
The SOAPPart method getEnvelope can
be used to retrieve the SOAPEnvelope object.
| Constructor Summary | |
|---|---|
| SOAPPart() | |
| Method Summary | |
|---|---|
| abstract void | addMimeHeader(String name, String value)
Creates a MimeHeader object with the specified
name and value and adds it to this SOAPPart
object. |
| abstract Iterator | getAllMimeHeaders()
Retrieves all the headers for this SOAPPart
object as an iterator over the MimeHeader
objects. |
| abstract Source | getContent()
Returns the content of the SOAPEnvelope as a JAXP
Source object. |
| String | getContentId()
Retrieves the value of the MIME header whose name is
"Content-Id". |
| String | getContentLocation()
Retrieves the value of the MIME header whose name is
"Content-Location". |
| abstract SOAPEnvelope | getEnvelope()
Gets the SOAPEnvelope object associated with
this SOAPPart object. |
| abstract Iterator | getMatchingMimeHeaders(String[] names)
Retrieves all MimeHeader objects that match
a name in the given array. |
| abstract String[] | getMimeHeader(String name)
Gets all the values of the MimeHeader object
in this SOAPPart object that is identified by
the given String. |
| abstract Iterator | getNonMatchingMimeHeaders(String[] names)
Retrieves all MimeHeader objects whose name
does not match a name in the given array. |
| abstract void | removeAllMimeHeaders()
Removes all the MimeHeader objects for this
SOAPEnvelope object. |
| abstract void | removeMimeHeader(String header)
Removes all MIME headers that match the given name. |
| abstract void | setContent(Source source)
Sets the content of the SOAPEnvelope object
with the data from the given Source object. |
| void | setContentId(String contentId)
Sets the value of the MIME header named "Content-Id" to
the given String. |
| void | setContentLocation(String contentLocation)
Sets the value of the MIME header "Content-Location" to
the given String. |
| abstract void | setMimeHeader(String name, String value)
Changes the first header entry that matches the given
header name so that its value is the given value, adding a
new header with the given name and value if no existing
header is a match. |
MimeHeader object with the specified
name and value and adds it to this SOAPPart
object. If a MimeHeader with the specified
name already exists, this method adds the specified value
to the already existing value(s).
Note that RFC822 headers can contain only US-ASCII characters.
Parameters: name a String giving the
header name value a String giving the
value to be set or added
Throws: java.lang.IllegalArgumentException if there was a problem with the specified mime header name or value
SOAPPart
object as an iterator over the MimeHeader
objects.Returns: an Iterator object with all of the Mime
headers for this SOAPPart object
Source object.Returns: the content as a
javax.xml.transform.Source object
Throws: SOAPException if the implementation cannot
convert the specified Source object
See Also: setContent(javax.xml.transform.Source)
Returns: a String giving the value of the MIME
header named "Content-Id"
See Also: setContentId(java.lang.String)
Returns: a String giving the value of the MIME
header whose name is "Content-Location"
See Also: setContentLocation(java.lang.String)
SOAPEnvelope object associated with
this SOAPPart object. Once the SOAP envelope is
obtained, it can be used to get its contents.Returns: the SOAPEnvelope object for this
SOAPPart object
Throws: SOAPException if there is a SOAP error
MimeHeader objects that match
a name in the given array.Parameters: names a String array with
the name(s) of the MIME headers to be returned
Returns: all of the MIME headers that match one of the names
in the given array, returned as an Iterator
object
MimeHeader object
in this SOAPPart object that is identified by
the given String.Parameters: name the name of the header; example: "Content-Type"
Returns: a String array giving all the values for
the specified header
MimeHeader objects whose name
does not match a name in the given array.Parameters: names a String array with
the name(s) of the MIME headers not to be returned
Returns: all of the MIME headers in this SOAPPart
object except those that match one of the names in the
given array. The nonmatching MIME headers are returned as
an Iterator object.
MimeHeader objects for this
SOAPEnvelope object.Parameters: header a String giving
the name of the MIME header(s) to be removed
SOAPEnvelope object
with the data from the given Source object.Parameters: source javax.xml.transform.Source object with the data to be set
Throws: SOAPException if there is a problem in setting the source
See Also: getContent()
String.Parameters: contentId a String giving
the value of the MIME header "Content-Id"
Throws: java.lang.IllegalArgumentException if there is a problem in setting the content id
See Also: getContentId()
String.Parameters: contentLocation a String
giving the value of the MIME header
"Content-Location"
Throws: java.lang.IllegalArgumentException if there is a problem in setting the content location.
See Also: getContentLocation()
Note that RFC822 headers can contain only US-ASCII characters.
Parameters: name a String giving the
header name for which to search value a String giving the
value to be set. This value will be substituted for the
current value(s) of the first header that is a match if
there is one. If there is no match, this value will be
the value for a new MimeHeader object.
Throws: java.lang.IllegalArgumentException if there was a problem with the specified mime header name or value java.lang.IllegalArgumentException if there was a problem with the specified mime header name or value
See Also: getMimeHeader(java.lang.String)