Home » axis2-1.5-src » org.apache » axis2 » transport » [javadoc | source]
org.apache.axis2.transport
public interface: MessageFormatter [javadoc | source]

All Known Implementing Classes:
    XFormURLEncodedFormatter, FastInfosetMessageFormatter, DataSourceFormatter, MultipartFormDataFormatter, JSONBadgerfishMessageFormatter, SOAPMessageFormatter, ApplicationXMLFormatter, FastInfosetPOXMessageFormatter, JSONMessageFormatter

MessageFormatter implementations are used by Axis2 to support serialization of messages to different message formats. (Eg: JSON). Users can register MessageFormatter implementations against a message type using the axis2.xml. Message type for a message can be specified by setting the "messageType" property in the MessageContext. This can also be given as a parameter in the service.xml/axis2.xml for a per service based/engine wide configuration.

Method from org.apache.axis2.transport.MessageFormatter Summary:
formatSOAPAction,   getBytes,   getContentType,   getTargetAddress,   writeTo
Method from org.apache.axis2.transport.MessageFormatter Detail:
 public String formatSOAPAction(MessageContext messageContext,
    OMOutputFormat format,
    String soapAction)
 public byte[] getBytes(MessageContext messageContext,
    OMOutputFormat format) throws AxisFault
 public String getContentType(MessageContext messageContext,
    OMOutputFormat format,
    String soapAction)
    Different message formats can set their own content types Eg: JSONFormatter can set the content type as application/json
 public URL getTargetAddress(MessageContext messageContext,
    OMOutputFormat format,
    URL targetURL) throws AxisFault
    Some message formats may want to alter the target url.
 public  void writeTo(MessageContext messageContext,
    OMOutputFormat format,
    OutputStream outputStream,
    boolean preserve) throws AxisFault
    To support deffered writing transports as in http chunking.. Axis2 was doing this for some time..

    Preserve flag can be used to preserve the envelope for later use. This is usefull when implementing authentication machnisms like NTLM.