Web container custom properties

 

+

Search Tips   |   Advanced Search

 

You can configure name-value pairs of data, where the name is a property key and the value is a string value used to to set internal system configuration properties. Defining a new property enables you to configure a setting beyond that which is available in the console. The following is a list of some of the available Web container custom properties.

 

Global settings for internal servlets

HTTP Transport custom properties can also be set at the Web container level.

WAR files that are packaged using third-party tools cannot specify behavior for the services that are exposed by the Web container internal servlets. You can globally enable and disable internal servlets for all Web applications at the Web container level by creating name-value pairs such as:

Name Value
fileServingEnabled true
directoryBrowsingEnabled true
serveServletsByClassnameEnabled true

Settings that are defined in an assembly tool take precedence over the global settings that are set through the custom properties at the Web container level.

Web application deployment extensions continue to hold configuration information for the services that are provided by the internal servlets, and take precedence over the global settings that are set through the custom properties at the Web container level.

 

UTF-8 encoded Uniform Resource Locators (URLs)

The UTF-8 encoded URL feature, which provides UTF-8 encoded URLs to support the double-byte characters in URLs is enabled by default. You can prevent the Web container from explicitly decoding URLs in UTF-8 and have them use the ISO-8859 standard as per the current HTTP specification by using the following name-value pair:

Name Value
DecodeUrlAsUTF8 false

 

Global configuration of servlet listeners

The servlet specification supports applications registering listeners for servlet-related events on an individual application basis through the web.xml descriptor. However, using the listeners custom property, a server can listen to servlet events across Web applications. To implement global listening, a listener is registered at the Web container level and is propagated to all of the installed and new Web applications. This global behavior of internal servlet listeners is controlled by the listeners custom property by using the following name-value pair format:

Name Value
listeners listener_class

The values for this property is a string specifying a comma separated list of listener classes. The listener supplied must implement standard listener classes from the Java Servlet API or IBM listener extension classes.

 

Binary Large Object (BLOB) data type for Oracle databases

The UseOracleBLOB custom property creates the HTTP session database table using the BLOB data type for the medium column. This property increases performance of persistent sessions when Oracle databases are used. Due to an Oracle restriction, BLOB support requires use of the Oracle's oci database driver for more than 4000 bytes of data. You must also ensure that a new sessions table is created before the server is restarted by dropping your old sessions table or by changing the datasource definition to reference a database that does not contain a sessions table. To create a sessions table using the BLOB data type, use the following name-value pair:

Name Value
UseOracleBLOB true

 

Detecting session data crossover

The DebugSessionCrossover custom property enables code to perform additional checks to verify that only the session associated with the request is accessed or referenced. Messages are logged if any discrepancies are detected. To enable session data crossover detection, use the following name-vaule pair:

Name Value
DebugSessionCrossover true

See article, HTTP session problems, for additional information.

 

Optimizing Web services client to Web container communication

To improve performance, there is an optimized communication path between a Web services client application and a Web container that are located in the same application server process. Requests from the Web services client that are normally sent to the Web container using a network connection are delivered directly to the Web container using an optimized local path. The local path is available because the Web services client application and the Web container are running in the same process. This optimized communication path is disabled by default. Before enabling this property, make sure that wild cards are not specified for the Web container ports. Use specific ports for the web container when the optimized communication path is enabled. To enable the optimized communication path, use the following name-value pair:

Name Value
enableInProcessConnections true

See article, Web services client to Web container optimized communication, for additional information.

WAS 5.x allows Uniform Resource Locators (URLs) without leading front slashes ( / ) and to preserve compatibility, You can set the custom property, prependSlashToResource to true. To ignore the specification and consider URLs without the leading front slash, use the following name-value pair:

Name Value
prependSlashToResource true

 

HTTPS requests with an SSL offloader

The custom property httpsIndicatorHeader manages HTTPS requests that are forwarded to an appserver from an SSL offloader that is used in front of WAS. When an HTTPS request is received by an SSL offloader it is redirected over HTTP to an appserver using WAS. The SSL offloader adds a header indicating the original request was over HTTP. The httpsIndicatorHeader property specifies the header name added by the SSL box. The appserver checks this indicator to determine if SSL is required. If it determines the request is SSL over HTTP, an HTTPS scheme is chosen.

Name Value
httpsIndicatorHeader Request header key name

 

HttpSessionIdReuse

The custom property HttpSessionIdReuse determines whether the session manager can use the session ID sent from a browser to preserve session data across Web applications running in an environment that is not configured for session persistence. In a multi-JVM environment that is not configured for session persistence setting this property to true enables the session manager to use the same session information for all of a user's requests even if the Web applications that are handling these requests are governed by different JVMs. The default value for this property is false.

To enable the session manager ton use the session ID sent from a browser to preserve session data across Web applications running in an environment that is not configured for session persistence, use the following name-value pair:

Name Value
HttpSessionIdReuse true




 

Related tasks


Modifying the default Web container configuration

 

Related Reference

HTTP transport custom properties
HTTP session problems
Web services client to Web container optimized communication