Skip to content

axis2.xml Configuration

The axis2.xml file is the main configuration file for Axis2/C. It controls transports, modules, handlers, and global settings.

Location

Default locations:

  • $AXIS2C_HOME/axis2.xml
  • /usr/local/axis2c/axis2.xml
  • Specified via AXIS2_REPO environment variable

Basic Structure

<axisconfig name="AxisC">
    <!-- Transport receivers -->
    <transportReceiver name="https" class="axis2_http2_receiver">
        <!-- HTTP/2 configuration -->
    </transportReceiver>

    <!-- Transport senders -->
    <transportSender name="https" class="axis2_http2_sender">
        <!-- Client transport configuration -->
    </transportSender>

    <!-- Modules to engage -->
    <module ref="addressing"/>

    <!-- Global handlers -->
    <phaseOrder type="inflow">
        <!-- Incoming request handlers -->
    </phaseOrder>
</axisconfig>

HTTP/2 Configuration

Enabling HTTP/2

<transportReceiver name="https" class="axis2_http2_receiver">
    <parameter name="port">8443</parameter>
    <parameter name="enableHTTP2">true</parameter>

    <!-- TLS Configuration -->
    <parameter name="SSLServerCert">/path/to/server.crt</parameter>
    <parameter name="SSLServerKey">/path/to/server.key</parameter>
    <parameter name="SSLCACert">/path/to/ca.crt</parameter>

    <!-- Enable mTLS (client certificate verification) -->
    <parameter name="SSLVerifyClient">require</parameter>
</transportReceiver>

TLS Cipher Suites

<parameter name="SSLCipherSuite">
    TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
</parameter>

Service Deployment

Service Repository

<parameter name="ServicesDirectory">services</parameter>
<parameter name="EnableAllServices">false</parameter>

Hot Deployment

<parameter name="EnableHotDeployment">true</parameter>
<parameter name="EnableHotUpdate">true</parameter>

JSON Configuration

JSON Message Receiver

<messageReceiver name="json" class="axis2_json_msg_recv">
    <parameter name="prettyPrint">false</parameter>
    <parameter name="contentType">application/json</parameter>
</messageReceiver>

Legacy SOAP Configuration

SOAP Message Receivers

<messageReceiver name="soap11" class="axis2_soap_msg_recv"/>
<messageReceiver name="soap12" class="axis2_soap12_msg_recv"/>

WS-Addressing

<module ref="addressing"/>

Handler Configuration

Phase Order

<phaseOrder type="inflow">
    <phase name="Transport"/>
    <phase name="Security"/>
    <phase name="Dispatch"/>
</phaseOrder>

<phaseOrder type="outflow">
    <phase name="MessageOut"/>
    <phase name="Security"/>
    <phase name="Transport"/>
</phaseOrder>

See Also