| java.lang.Object javax.xml.soap.MessageFactory
All known Subclasses: com.sun.xml.messaging.saaj.soap.MessageFactoryImpl,
MessageFactory | abstract public class MessageFactory (Code) | | A factory for creating SOAPMessage objects.
A SAAJ client can create a MessageFactory object
using the method newInstance , as shown in the following
lines of code.
MessageFactory mf = MessageFactory.newInstance();
MessageFactory mf12 = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL);
All MessageFactory objects, regardless of how they are
created, will produce SOAPMessage objects that
have the following elements by default:
- A
SOAPPart object
- A
SOAPEnvelope object
- A
SOAPBody object
- A
SOAPHeader object
In some cases, specialized MessageFactory objects may be obtained that produce messages
prepopulated with additional entries in the SOAPHeader object and the
SOAPBody object.
The content of a new SOAPMessage object depends on which of the two
MessageFactory methods is used to create it.
createMessage()
This is the method clients would normally use to create a request message.
createMessage(MimeHeaders, java.io.InputStream) -- message has
content from the InputStream object and headers from the
MimeHeaders object
This method can be used internally by a service implementation to
create a message that is a response to a request.
|
Method Summary | |
abstract public SOAPMessage | createMessage() Creates a new SOAPMessage object with the default
SOAPPart , SOAPEnvelope , SOAPBody ,
and SOAPHeader objects. | abstract public SOAPMessage | createMessage(MimeHeaders headers, InputStream in) Internalizes the contents of the given InputStream object into a
new SOAPMessage object and returns the SOAPMessage
object.
Parameters: in - the InputStream object that contains the datafor a message Parameters: headers - the transport-specific headers passed to themessage in a transport-independent fashion for creation of themessage a new SOAPMessage object containing the data fromthe given InputStream object exception: IOException - if there is a problem in reading data fromthe input stream exception: SOAPException - may be thrown if the message is invalid exception: IllegalArgumentException - if the MessageFactory requires one or more MIME headers to be present in the headers parameter and they are missing. | public static MessageFactory | newInstance() Creates a new MessageFactory object that is an instance
of the default implementation (SOAP 1.1),
This method uses the following ordered lookup procedure to determine the MessageFactory implementation class to load:
- Use the javax.xml.soap.MessageFactory system property.
- Use the properties file "lib/jaxm.properties" in the JRE directory.
| public static MessageFactory | newInstance(String protocol) Creates a new MessageFactory object that is an instance
of the specified implementation. |
createMessage | abstract public SOAPMessage createMessage() throws SOAPException(Code) | | Creates a new SOAPMessage object with the default
SOAPPart , SOAPEnvelope , SOAPBody ,
and SOAPHeader objects. Profile-specific message factories
can choose to prepopulate the SOAPMessage object with
profile-specific headers.
Content can be added to this message's SOAPPart object, and
the message can be sent "as is" when a message containing only a SOAP part
is sufficient. Otherwise, the SOAPMessage object needs
to create one or more AttachmentPart objects and
add them to itself. Any content that is not in XML format must be
in an AttachmentPart object.
a new SOAPMessage object exception: SOAPException - if a SOAP error occurs exception: UnsupportedOperationException - if the protocol of thisMessageFactory instance is DYNAMIC_SOAP_PROTOCOL |
createMessage | abstract public SOAPMessage createMessage(MimeHeaders headers, InputStream in) throws IOException, SOAPException(Code) | | Internalizes the contents of the given InputStream object into a
new SOAPMessage object and returns the SOAPMessage
object.
Parameters: in - the InputStream object that contains the datafor a message Parameters: headers - the transport-specific headers passed to themessage in a transport-independent fashion for creation of themessage a new SOAPMessage object containing the data fromthe given InputStream object exception: IOException - if there is a problem in reading data fromthe input stream exception: SOAPException - may be thrown if the message is invalid exception: IllegalArgumentException - if the MessageFactory requires one or more MIME headers to be present in the headers parameter and they are missing. MessageFactory implementations forSOAP_1_1_PROTOCOL or SOAP_1_2_PROTOCOL must not throw IllegalArgumentException for this reason. |
newInstance | public static MessageFactory newInstance() throws SOAPException(Code) | | Creates a new MessageFactory object that is an instance
of the default implementation (SOAP 1.1),
This method uses the following ordered lookup procedure to determine the MessageFactory implementation class to load:
- Use the javax.xml.soap.MessageFactory system property.
- Use the properties file "lib/jaxm.properties" in the JRE directory. This configuration file is in standard
java.util.Properties format and contains the fully qualified name of the implementation class with the key being the
system property defined above.
- Use the Services API (as detailed in the JAR specification), if available, to determine the classname. The Services API
will look for a classname in the file META-INF/services/javax.xml.soap.MessageFactory in jars available to the runtime.
- Use the SAAJMetaFactory instance to locate the MessageFactory implementation class.
a new instance of a MessageFactory exception: SOAPException - if there was an error in creating thedefault implementation of theMessageFactory . See Also: SAAJMetaFactory |
newInstance | public static MessageFactory newInstance(String protocol) throws SOAPException(Code) | | Creates a new MessageFactory object that is an instance
of the specified implementation. May be a dynamic message factory,
a SOAP 1.1 message factory, or a SOAP 1.2 message factory. A dynamic
message factory creates messages based on the MIME headers specified
as arguments to the createMessage method.
This method uses the SAAJMetaFactory to locate the implementation class
and create the MessageFactory instance.
a new instance of a MessageFactory Parameters: protocol - a string constant representing the class of thespecified message factory implementation. May beeither DYNAMIC_SOAP_PROTOCOL ,DEFAULT_SOAP_PROTOCOL (which is the sameas) SOAP_1_1_PROTOCOL , orSOAP_1_2_PROTOCOL . exception: SOAPException - if there was an error in creating thespecified implementation of MessageFactory . See Also: SAAJMetaFactory since: SAAJ 1.3 |
|
|