Transports can be configured and enabled in a global-level or a service-level. Globally enabled and configured transports effect all services deployed in a running Carbon instance. The following methods can be used to configure and enable transports globally.
Using
...
axis2.xml File Anchor Axis2 Axis2
Axis2 | |
Axis2 |
WSO2 Carbon and all Carbon-based products are shipped with a configuration file named axis2.xml. This XML configuration file can be found at <CARBON_HOME>/repository/conf/axis2 directory. This is similar to the axis2.xml file that ships with "Apache Axis2" and "Apache Synapse." It contains the global configuration for WSO2 Carbon and the Carbon-based products. The axis2.xml configuration generally includes configuration details for modules, phases, handlers, global configuration parameters and transports. The elements <transportReceiver> and <transportSender> are used to configure transport listeners and senders respectively. In the axis2.xml file that comes with WSO2 Carbon or any Carbon-based product, some transports are already configured and enabled by default, including the HTTP and HTTPS transports.
...
Code Block | ||||
---|---|---|---|---|
| ||||
<transportReceiver name="http" class="org.wso2.carbon.core.transports.http.HttpTransportListener"> <!-- Uncomment the following if you are deploying this within an application server. You need to specify the HTTP port of the application server --> <parameter name="port">9763</parameter> <!-- Uncomment the following to enable Apache2 mod_proxy. The port on the Apache server is 80 in this case. --> <!--<parameter name="proxyPort">80</parameter>--> </transportReceiver> |
<transportResiever>
attributes and elements:
- name - A mandatory attribute which indicates a unique name for the transport receiver.
- class - A mandatory attribute which indicates the transport receiver implementation class.
- parameters - Configuration parameters for the transport receiver. It should be included as child elements of the <transportReceiver> element.
...
Code Block | ||||
---|---|---|---|---|
| ||||
<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="OmitSOAP12Action">true</parameter> </transportSender> |
...
Info | ||
---|---|---|
| ||
Simply having <transportReceiver> and <transportSender> elements in the axis2.xml file causes those transports to be loaded and activated during server startup. Therefore any dependency JARs required by those transport implementations must be included in the server classpath to prevent the server from running into exceptions at startup. In addition to that, an inaccurate transport configuration (for example, a wrong parameter value) might cause the transport to be not enabled properly. |
Using catalina-server.xml File Anchor cat cat
cat | |
cat |
In addition to the above, transport receivers can be configured globally using the <CARBON_HOME>/repository/conf/tomcat/catalina-server.xml file. The default HTTP/S configuration specified in the catalina-server.xml file is given below:
Code Block | ||||
---|---|---|---|---|
| ||||
<!-- optional attributes:
proxyPort="80"-->
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="9763"
bindOnInit="false"
maxHttpHeaderSize="8192"
acceptorThreadCount="2"
maxThreads="250"
minSpareThreads="50"
disableUploadTimeout="false"
connectionUploadTimeout="120000"
maxKeepAliveRequests="200"
acceptCount="200"
server="WSO2 Carbon Server"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg" URIEncoding="UTF-8"/>
<!-- optional attributes:proxyPort="443"-->
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="9443"
bindOnInit="false"
sslProtocol="TLS"
maxHttpHeaderSize="8192"
acceptorThreadCount="2"
maxThreads="250"
minSpareThreads="50"
disableUploadTimeout="false"
enableLookups="false"
connectionUploadTimeout="120000"
maxKeepAliveRequests="200"
acceptCount="200"
server="WSO2 Carbon Server"
clientAuth="false"
compression="on"
scheme="https"
secure="true"
SSLEnabled="true"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
keystoreFile="${carbon.home}/repository/resources/security/wso2carbon.jks"
keystorePass="wso2carbon"
URIEncoding="UTF-8"/> |
Currently only the default servlet transports of Carbon can be configured using the catalina-server.xml file.
Info | ||
---|---|---|
| ||
For more details on config parameters, refer to http://tomcat.apache.org/tomcat-7.0-doc/config/http.html |
Through the Management Console AnchorConsole Console
Console | |
Console |
...
1. Log on to the product's management console and select "Transports" to access "Transport Management."
2. The "Transport Management" page lists the available transport listeners and senders. From here, you can enable, disable and configure transport listeners and senders separately, without having to restart the server. Click on the "Configure" link of a certain transport listener/sender.
3. You will be taken to a page, where you can add and edit transport parameters. Do your configuration and click the "Update" button to save the changes. The updated settings will take effect immediately and the corresponding transport listener or sender will be restarted.
For example,
Adding Transport Parameters
1. Enter the parameter's name and click the "Add" button. For example,
2. Edit the parameter's value.
Editing Transport Parameters
You can edit the parameter's value right in the textarea.
Enabling and Disabling Transports
The "Transport Management" page lists the available transport listeners and senders. From there, you can enable or disable transports.
Enabling Transports
Anchor | ||||
---|---|---|---|---|
|
Follow the instructions below to enable transports.
1. Click on the "Enable" link of a certain transport listener/sender in the "Transport Management" page.
2. You will be taken to a page where you can specify configuration parameters for the transport listener or the sender you want to enable. You will notice that all the required fields are already populated with a set of default values. Change the default values to suit the requirements of your deployment and click "Enable" to enable the transport listener/sender.
Info | ||
---|---|---|
| ||
If any of the dependencies required to enable the transport listener or the sender are missing, the transport will not be enabled and you will be redirected back to the "Transport Management" page. You will notice that the "Enable" option is still available for that particular transport listener or sender, indicating that it has not been enabled. Therefore it is important that you put all the required JARs in the PRODUCT_HOME/repository/components/dropins directory before attempting to activate a transport listener or a sender. |
Disabling Transports
Anchor | ||||
---|---|---|---|---|
|
Follow the instructions below to disable transports.
Info | ||
---|---|---|
| ||
HTTP and HTTPS transports are configured in the axis2.xml. They are always loaded from the axis2.xml at the server startup. Also HTTP and HTTPS transports cannot be disabled since those transports are required by the Carbon management console and related administrative services. In case of HTTP/HTTPS transport listeners and senders, you will receive a warning dialog indicating that those transports cannot be disabled. |
1. Click on the "Disable" link of a certain transport listener/sender in the "Transport Management" page.
2. Confirm your request to disable transport listener/sender by clicking "Yes."
hidden | true |
---|