HTTP Properties

In some situations, you may wish to alter the configuration of the HTTP server that receives incoming HTTP requests for TIBCO ActiveMatrix BusinessWorks. This section lists the properties for configuring the HTTP server.

 

bw.plugin.http.server.restrictHttpMethods

Using this property, specific HTTP methods can be disabled. By default, none of the HTTP methods are restricted by the server. You can specify a comma-separated list of methods that are to be restricted. These restrictions are then applicable to all resources accessed on this server, for all roles.

You cannot disable methods selectively for a particular service or for a particular server.

bw.plugin.http.protocol.single-cookie-header

This property allows you to send multiple cookies in a single, non-repeating Cookie header element for outgoing HTTP requests in the Send HTTP Request activity.

bw.plugin.http.server.allowIPAddresses

This property allows you to specify a pipe-separated list of regular expression patterns that is compared with the remote client’s IP address before accepting or rejecting requests from the client. The remote IP address of the client must match the expression patterns for the request to be accepted.

For example : To allow requests from any IP address matching with pattern 127\.\d+\.\d+\.\d+ or 10\.\d+\.\d+\.\d+
specify the property as bw.plugin.http.server.allowIPAddresses=127\\.\\d+\\.\\d+\\.\\d+|10\\.\\d+\\.\\d+\\.d+

Note: Use Double back slash in place of single back-slash in an expression.

bw.plugin.http.server.restrictIPAddresses

This property allows you to specify a comma-separated list of regular expression patterns that is compared with the remote client’s IP address before accepting or rejecting requests from the client. The remote address of the client must not match for any request from this client to be accepted.

bw.plugin.http.server.acceptCount

This property specifies the maximum queue size for incoming requests. Incoming requests that are not handled by available threads (see bw.plugin.http.server.minProcessors and bw.plugin.http.server.maxProcessors) are placed on the queue until they can be processed. If the queue is full, new incoming requests are refused with an error. The default value of this property is 100. This property is available only when the server type ’Tomcat’ is selected.

bw.plugin.http.server.serverType

This property specifies the server type that is to be used for the HTTP Connection resource. Two server types are available: Tomcat and HTTP Component. The default value of this property is Tomcat.

bw.plugin.http.server.httpcomponents.workerThread

This property specifies the maximum number of web server threads available to handle HTTP requests for the HTTPComponents server type. The default value of this property is 50.

bw.plugin.http.server.minProcessors

This property specifies the minimum number of threads available for incoming HTTP requests. The HTTP server creates the number of threads specified by this parameter when it starts up. The default minimum number of threads is 10.

If the Flow Limit deployment property is set, the value of this property is set to <valueOfMaxProcessorsProperty>/2.

bw.plugin.http.server.maxProcessors

This property specifies the maximum number of threads available for incoming HTTP requests. The HTTP server will not create more than the number of threads specified by this parameter. The default maximum number of threads is 75.

If the Flow Limit deployment property is set, the value of this property is set to <valueOfFlowLimit> - 1.

bw.plugin.http.server.maxSpareProcessors

This property specifies the maximum number of unused request processing threads that can exist until the thread pool starts stopping the unnecessary threads. The default maximum number of spare threads is 50.

bw.plugin.http.client.ParseEntireMultipartMessage

This property enables the HTTP client to parse the entire multi-part message.

For ActiveMatrix BusinessWorks 5.2, an HTTP response message that is received by the HTTP client, is parsed on the content-type header. When the message is a multi-part message, the attachments are put in the attachment list. In ActiveMatrix BusinessWorks 5.2, the message body that is exposed to the user should contain the entire message body, including the attachments.

However, parsing a multi-part message is not a problem in ActiveMatrix BusinessWorks 5.3 and later versions as MIME attachments are handled differently.

bw.plugin.http.client.ResponseThreadPool

By default, each Request/Response activity that uses the HTTP protocol (for example, Send HTTP Request or SOAP Request Reply) is associated with a unique thread pool. Each request is executed in a separate thread, belonging to the thread pool associated with the activity. The size of each thread pool is 10 by default, therefore, only 10 requests can execute concurrently.

Setting this property to a value specifies the size of the thread pool to use for request/response activities. This thread pool can be for each activity, or all activities can share the same thread pool. For more information about determining the type of thread pool to use, see bw.plugin.http.client.ResponseThreadPool.type .

The thread pool is created when the engine starts, therefore be careful to set the value of this property to a reasonable number for your system. If you set the value too high, it may result in extra resources allocated that are never used.

bw.plugin.http.client.ResponseThreadPool.type

This property determines the type of thread pool to use for request/response activities. Either one thread pool per activity is created, or one common thread pool is created to be shared across all activities. Specify default as the value of this property if you wish to create a thread pool for each activity. Specify single as the value of this property if you wish to create a single, common thread pool for all activities.

The size of the thread pool is determined by the value of the property bw.plugin.http.client.ResponseThreadPool. When the thread pool type is default, a thread pool of the specified size is created for each request or response activity. When the thread pool type is single, one thread pool of the specified size is created and all activities share the same thread pool.

bw.plugin.http.client.usePersistentConnectionManager

This property specifies that a pool of HTTP connections to each HTTP server should be created so that connections can be reused by Send HTTP Request activities. Not all HTTP servers support persistent connections. Refer to your HTTP server documentation for more information about support for persistent connections.

When this property is set to true, a pool of connections is created for each HTTP server that Send HTTP Request activities connect to. The total number of connections in the pool is limited by the bw.plugin.http.client.maxTotalConnections property. The number of connections for each host is limited by the bw.plugin.http.client.maxConnectionsPerHost property.

The default value of this property is false.

For more information, see "Send HTTP Request" in TIBCO ActiveMatrix BusinessWorks™ Palette Reference.

bw.plugin.http.client.maxConnectionsPerHost

The value of this property is ignored unless the bw.plugin.http.client.usePersistentConnectionManager property is set to true. This property specifies the maximum number of persistent connections to each remote HTTP server.

The default value for this property is 20.

For more information, see "Send HTTP Request" in TIBCO ActiveMatrix BusinessWorks™ Palette Reference.

bw.plugin.http.client.maxTotalConnections

The value of this property is ignored unless the bw.plugin.http.client.usePersistentConnectionManager property is set to true. This property specifies the maximum number of persistent connections to create for all HTTP servers.

The default value for this property is 200.

For more information, see "Send HTTP Request" in TIBCO ActiveMatrix BusinessWorks™ Palette Reference.

bw.plugin.http.client.checkForStaleConnections

The value of this property is ignored unless the bw.plugin.http.client.usePersistentConnectionManager or bw.plugin.http.client.usePersistentConnectionManagerForSSL property is set to true. For persistent connections, the HTTPComponent Library 4.5.5 defines the period of inactivity in milliseconds after which persistent connections must be re-validated before being allocated to the consumer. This check helps to detect connections that have become stale when the connections were kept inactive in the pool.

A non-positive value passed to this method disables connection validation. The default value of this property is 2000 ms

For more information, see "Send HTTP Request" in TIBCO ActiveMatrix BusinessWorks™ Palette Reference.

bw.plugin.http.handleAllMimePartsAsAttachment

In previous releases, when the content-type of an incoming message was "multipart/*", the first part of the message was presented as the POSTDATA. This is incorrect according to MIME specification. The bw.plugin.http.handleAllMimePartsAsAttachment property fixes this problem.

If this property is set to true and the top-level content-type of the incoming HTTP message is "multipart/*", then an HTTP Receiver will present all the MIME parts as attachments and the POSTDATA field will be empty. If this property is set to false (the default value), backward compatibility is maintained and the first MIME part is presented as the POSTDATA.

Warning: Do not check the Parse Post Method Data field on the HTTP Receiver process starter when this property is set to true. This causes an error to be thrown.

bw.plugin.http.server.debug

When set to true, specifies that the contents of incoming HTTP requests are written to the log file. Writing each request to a log file does incur some overhead and additional processing time.

bw.plugin.http.server.defaultHost

Specifies the name of the default host to use when the machine has multiple domains or IP addresses. The value of this parameter can be either a host name or IP address.

When the hostname is localhost, ActiveMatrix BusinessWorks considers the machine as a non multi home environment. Hence it is not required to set the bw.plugin.http.server.defaultHost property in bwengine.tra file.

However, when the hostname is anything other than the localhost, then ActiveMatrix BusinessWorks considers the machine as a multi home environment. Set the bw.plugin.http.server.defaultHost property in bwengine.tra file to the same value as has been set in the host field of HTTP Shared Connection for default host.