This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.
HTTP Servlet Transport
The transport receiver implementation of the Carbon HTTP transport is available in the Carbon core component. The transport sender implementation comes from the Apache Axis2 transport module. This transport is shipped with WSO2 Carbon and all WSO2 Carbon based products. All Carbon based products except for WSO2 ESB use this transport as the default HTTP transport. The two classes which implement the listener and sender APIs are org.wso2.carbon.core.transports.http.HttpTransportListener
and org.apache.axis2.transport.http.CommonsHTTPTransportSender
respectively. It is important to note that this is a blocking HTTP transport implementation, meaning that I/O threads get blocked while received messages are processed completely by the underlying Axis2 engine.
Transport Receiver Parameters
Parameter Name |
Description |
Requried |
Possible Values |
Default Value |
---|---|---|---|---|
port |
The port number on which this transport receiver should listen for incoming messages. |
Yes |
A positive integer less than 65535 |
 |
proxyPort |
When used this transport listener will accept messages arriving through a HTTP proxy server which listens on the specified proxy port. Apache mod_proxy should be enabled on the proxy server. All the WSDLs generated will contain the proxy port value as the listener port. |
No |
A positive integer less than 65535 |
 |
When using org.wso2.carbon.core.transports.http.HttpTransportListener
as the transport receiver implementation, HTTP servlet transport should be configured in the $CARBON_HOME/conf/transports.xml
file. The transport class that should be specified in the transports.xml
file is org.wso2.carbon.server.transports.http.HttpTransport
. This servlet transport implementation can be further tuned up using the following parameters.
Parameter Name |
Description |
Requried |
Possible Values |
Default Value |
---|---|---|---|---|
port |
The port over which this transport receiver will listen for incoming messages. |
Yes |
A positive integer less than 65535 |
 |
proxyPort |
When used this transport listener will accept messages arriving through a HTTP proxy server which listens on the specified proxy port. Apache |
No |
A positive integer less than 65535 |
 |
maxHttpHeaderSize |
The maximum size of the HTTP request and response header in bytes. |
No |
A positive integer |
4096 |
maxThreads |
The maximum number of worker threads created by the receiver to handle incoming requests. This parameter largely determines the number of concurrent connections that can be handled by the transport. |
No |
A positive integer |
40 |
enableLookups |
Use this parameter to enable DNS lookups in order to return the actual host name of the remote client. Disabling DNS lookups at transport level generally improves performance. |
No |
true, false |
true |
disableUploadTimeout |
This flag allows the servlet container to use a different, longer connection timeout while a servlet is being executed, which in the end allows either the servlet a longer amount of time to complete its execution, or a longer timeout during data upload. |
No |
true, false |
true |
clientAuth |
Set to true if you want the SSL stack to require a valid certificate chain from the client before accepting a connection. Set to want if you want the SSL stack to request a client Certificate, but not fail if one is not presented. A false value (which is the default) will not require a certificate chain unless the client requests a resource protected by a security constraint that uses CLIENT-CERT authentication. |
No |
true, false, want |
false |
maxKeepAliveRequests |
The maximum number of HTTP requests which can be pipelined until the connection is closed by the server. Setting this attribute to 1 will disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 will allow an unlimited amount of pipelined or keep-alive HTTP requests. |
No |
-1 or any positive integer |
100 |
acceptCount |
The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. |
No |
A positive integer |
10 |
compression |
Use this parameter to enable content compression and save server bandwidth. |
No |
on, off, force |
off |
noCompressionUserAgents |
Indicate a list of regular expressions matching user-agents of HTTP clients for which compression should not be used, because these clients, although they do advertise support for the feature, have a broken implementation. |
No |
A comma separated list of regular expressions |
empty string |
compressableMimeType |
Use this parameter to indicate a list of MIME types for which HTTP compression may be used. |
No |
A comma separated list of valid mime types |
text/html,text/xml,text/plain |
This is only a subset of all the supported parameters. The servlet HTTP transport uses the org.apache.catalina.connector.Connector implementation from Apache Tomcat. So the servlet HTTP transport actually accepts any parameter accepted by the connector implementation. Please refer Apache Tomcat connector configuration reference for more information and a complete list of supported parameters.
Transport Sender Parameters
Parameter Name |
Description |
Requried |
Possible Values |
Default Value |
---|---|---|---|---|
PROTOCOL |
The version of HTTP protocol to be used for outgoing messages. |
No |
HTTP/1.0, HTTP/1.1 |
HTTP/1.1 |
Transfer-Encoding |
Effective only when the HTTP version is 1.1 (i.e. the value of the PROTOCOL parameter should be HTTP/1.1). Use this parameter to enable chunking support for the transport sender. |
No |
chunked |
Not Chunked |
SocketTimeout |
The socket timeout value in milliseconds, for out bound connections. |
No |
A positive integer |
60000 ms |
ConnectionTimeout |
The connection timeout value in milliseconds, for out bound connections. |
No |
A positive integer |
60000 ms |
OmitSOAP12Action |
Set this parameter to "true" if you need to disable the soapaction for SOAP 1.2 messages. |
No |
true, false |
false |