|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.xml.soap.MessageFactory
org.apache.axis2.saaj.MessageFactoryImpl
public class MessageFactoryImpl
A factory for creating SOAPMessage
objects.
A JAXM client performs the following steps to create a message.
MessageFactory
object from a ProviderConnection
object (con
in the following line of code). The String
passed to the
createMessageFactory
method is the name of of a messaging profile, which must be the
URL for the schema. MessageFactory mf = con.createMessageFactory(schemaURL);
createMessage
on the MessageFactory
object. All
messages produced by this MessageFactory
object will have the header information
appropriate for the messaging profile that was specified when the MessageFactory
object was created. SOAPMessage m = mf.createMessage();
MessageFactory
object using the method
newInstance
, as shown in the following line of code. MessageFactory mf = MessageFactory.newInstance();A standalone client (a client that is not running in a container) can use the
newInstance
method to create a MessageFactory
object.
All MessageFactory
objects, regardless of how they are created, will produce
SOAPMessage
objects that have the following elements by default:
SOAPPart
objectSOAPEnvelope
objectSOAPBody
objectSOAPHeader
objectMessageFactory
object was
created using a ProviderConnection
object, which means that it was initialized with
a specified profile, it will produce messages that also come 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()
-- message has no contentcreateMessage(MimeHeaders, java.io.InputStream)
-- message has content from the
InputStream
object and headers from the MimeHeaders
object
Field Summary | |
---|---|
protected String |
soapVersion
|
Constructor Summary | |
---|---|
MessageFactoryImpl()
|
Method Summary | |
---|---|
SOAPMessage |
createMessage()
Creates a new SOAPMessage object with the default SOAPPart ,
SOAPEnvelope , SOAPBody , and SOAPHeader objects. |
SOAPMessage |
createMessage(MimeHeaders mimeheaders,
InputStream inputstream)
Internalizes the contents of the given InputStream object into a new
SOAPMessage object and returns the SOAPMessage object. |
void |
setProcessMTOM(boolean processMTOM)
Specify whether MTOM messages should be processed or parsed literally. |
void |
setSOAPVersion(String soapVersion)
|
Methods inherited from class javax.xml.soap.MessageFactory |
---|
newInstance, newInstance |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected String soapVersion
Constructor Detail |
---|
public MessageFactoryImpl()
Method Detail |
---|
public SOAPMessage createMessage() throws SOAPException
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.
createMessage
in class MessageFactory
SOAPMessage
object
SOAPException
- if a SOAP error occurs java.lang.UnsupportedOperationException - if the
protocol of this MessageFactory instance is DYNAMIC_SOAP_PROTOCOLpublic SOAPMessage createMessage(MimeHeaders mimeheaders, InputStream inputstream) throws IOException, SOAPException
InputStream
object into a new
SOAPMessage
object and returns the SOAPMessage
object.
createMessage
in class MessageFactory
mimeheaders
- the transport-specific headers passed to the message in a
transport-independent fashion for creation of the messageinputstream
- the InputStream
object that contains the data for a message
SOAPMessage
object containing the data from the given
InputStream
object
IOException
- if there is a problem in reading data from the input stream
SOAPException
- if the message is invalidpublic void setSOAPVersion(String soapVersion)
public void setProcessMTOM(boolean processMTOM)
The way MTOM messages are handled fundamentally differs between Axiom and SAAJ.
While Axiom replaces xop:Include elements by DataHandler
backed
OMText
nodes, there is no such requirement in SAAJ. The only
requirement there is that SOAPMessage.getAttachment(javax.xml.soap.SOAPElement)
returns the relevant AttachmentPart
when applied to an
xop:Include element.
This method allows to make this SAAJ implementation behave as Axiom, i.e. to substitute xop:Include elements.
processMTOM
- whether xop:Include elements should be substituted
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |