This file contains parameters which apply to scenarios where blocking transports are used i.e. Message Processors and the Callout Mediator. These parameters are grouped as follows.
Parameters
This section contains the following parameters relating to file caching, fault handling, time-out, file paths, SOAP and REST handling, and the POJO deployer.
Parameter Name | Description | Type | Default Value | Fixed Values | Mandator/Optional | Notes |
---|---|---|---|---|---|---|
hotdeployment | ||||||
hotupdate | ||||||
enableMTOM | ||||||
enableSwA | ||||||
ConfigContextTimeoutInterval | ||||||
sendStacktraceDetailsWithFaults | ||||||
DrillDownToRootCauseForFaultReason | ||||||
userName | ||||||
password | ||||||
servicePath | ||||||
restPath | ||||||
disableREST |
Message Receivers
A message receiver has the following two attributes.
Class: The implementation class of the message receiver.
MEP: The message exchange pattern supported by the message receiver.
Message receivers can be added in this section using the format shown in the example below.
<messageReceivers> <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> </messageReceivers>
Message Formatters
This section is used to define message formatters to be used in scenarios where blocking transports are used. A message formatter is used to build the outgoing stream of a message. See Working with Message Builders and Formatters for more information.
Message formatters can be added using the format shown in the example below.
<messageFormatters> <messageFormatter contentType="application/x-www-form-urlencoded" class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/> </messageFormatters>
Message Builders
This section is used to define message builders to be used in scenarios where blocking transports are used. A message builder is used by transport receivers to process the raw data in the payload of a received message and convert it to the required format (e.g., SOAP). See Working with Message Builders and Formatters for more information.
Message builders can be added using the format shown in the example below.
<messageBuilders> <messageBuilder contentType="application/xml" class="org.apache.axis2.builder.ApplicationXMLBuilder"/> </messageBuilders>
Transport Ins
Transport receivers can be added in this section using the format shown in the example below.
<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener"> <parameter name="myTopicConnectionFactory"> <parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter> <parameter name="java.naming.provider.url">tcp://localhost:61616</parameter> <parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter> <parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter> </parameter> </transportReceiver>
Configurable parameters for each transport receiver are as follows.
Parameter Name | Description |
---|---|
java.naming.factory.initial | |
java.naming.provider.url | |
transport.jms.ConnectionFactoryJNDIName | |
transport.jms.ConnectionFactoryType |
Transport Outs
Transport senders can be added in this section using the format shown in the example below.
<transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"> <parameter name="PROTOCOL">HTTP/1.1</parameter> <parameter name="Transfer-Encoding">chunked</parameter> <parameter name="cacheHttpClient">true</parameter> <parameter name="defaultMaxConnectionsPerHost">200</parameter> <!-- If following is set to 'true', optional action part of the Content-Type will not be added to the SOAP 1.2 messages --> <!-- <parameter name="OmitSOAP12Action">true</parameter> --> </transportSender>
Configurable parameters for each transport sender are as follows.
Parameter Name | Description | Default Value |
---|---|---|
PROTOCOL | The transport protocol. | |
Transfer-Encoding | ||
cacheHttpClient | ||
defaultMaxConnectionsPerHost | The maximum number of connections that will be created per host server by the client. If the backend server is slow, the connections in use at a given time will take a long time to be released and added back to the connection pool. As a result, connections may not be available for some requests and you may get the org.apache.commons.httpclient.ConnectionPoolTimeoutException: Timeout waiting for connection error. In such situations, it is recommended to increase the value for this parameter. | 2 |
Global Modules
If you want to engage a module system wide, you can do it by adding a top level module element in this section as shown in the following example.
<module ref="addressing"/>
Clustering
This section is used to prepare Axis2 for a clustered environment
Phases
This section is used to specify the order of phases in the execution chain.
The following configuration is an example of how phases are configured.
<phaseOrder type="InFlow"> <!-- System pre defined phases --> <phase name="Transport"> <handler name="RequestURIBasedDispatcher" class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> <order phase="Transport"/> </handler> <handler name="SOAPActionBasedDispatcher" class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> <order phase="Transport"/> </handler> </phase> <phase name="Addressing"> <handler name="AddressingBasedDispatcher" class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> <order phase="Addressing"/> </handler> </phase> <phase name="Security"/> <phase name="PreDispatch"/> <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> <handler name="RequestURIBasedDispatcher" class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/> <handler name="SOAPActionBasedDispatcher" class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/> <handler name="RequestURIOperationDispatcher" class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> <handler name="SOAPMessageBodyBasedDispatcher" class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> <handler name="HTTPLocationBasedDispatcher" class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> </phase> <phase name="RMPhase"/> <!-- System predefined phases --> <!-- After Postdispatch phase module author or service author can add any phase he want --> <phase name="OperationInPhase"/> <phase name="soapmonitorPhase"/> </phaseOrder> <phaseOrder type="OutFlow"> <!-- user can add his own phases to this area --> <phase name="soapmonitorPhase"/> <phase name="OperationOutPhase"/> <!--system predefined phase--> <!--these phase will run irrespective of the service--> <phase name="RMPhase"/> <phase name="PolicyDetermination"/> <phase name="MessageOut"/> <phase name="Security"/> </phaseOrder> <phaseOrder type="InFaultFlow"> <phase name="Addressing"> <handler name="AddressingBasedDispatcher" class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> <order phase="Addressing"/> </handler> </phase> <phase name="Security"/> <phase name="PreDispatch"/> <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> <handler name="RequestURIBasedDispatcher" class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/> <handler name="SOAPActionBasedDispatcher" class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/> <handler name="RequestURIOperationDispatcher" class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> <handler name="SOAPMessageBodyBasedDispatcher" class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> <handler name="HTTPLocationBasedDispatcher" class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> </phase> <phase name="RMPhase"/> <!-- user can add his own phases to this area --> <phase name="OperationInFaultPhase"/> <phase name="soapmonitorPhase"/> </phaseOrder> <phaseOrder type="OutFaultFlow"> <!-- user can add his own phases to this area --> <phase name="soapmonitorPhase"/> <phase name="OperationOutFaultPhase"/> <phase name="RMPhase"/> <phase name="PolicyDetermination"/> <phase name="MessageOut"/> <phase name="Security"/> </phaseOrder>