Java virtual machine custom properties

You can use the administrative console to change the values of Java™ virtual machine (JVM) custom properties.

Note: This topic references one or more of the application server log files. As a recommended alternative, you can configure the server to use the High Performance Extensible Logging (HPEL) log and trace infrastructure instead of using SystemOut.log , SystemErr.log, trace.log, and activity.log files on distributed and IBM® i systems. You can also use HPEL in conjunction with your native z/OS® logging facilities. If you are using HPEL, you can access all of your log and trace information using the LogViewer command-line tool from your server profile bin directory. See the information about using HPEL to troubleshoot applications for more information on using HPEL.

To set custom properties, connect to the administrative console and navigate to the appropriate Java virtual machine custom properties page.

Application server Deployment manager Node agent

[z/OS]Click Servers > Server Types. , and either WebSphere application servers > server_name or WebSphere proxy servers > server_name. Next, in the Server Infrastructure section, click Java and process management > Process definition , and select either Control, Servant, or Adjunct. Then, click Java virtual machine > Custom properties.

[AIX Solaris HP-UX Linux Windows][IBM i]Click Servers > Server Types, and either WebSphere application servers > server_name or WebSphere proxy servers > server_name. Then, under Server Infrastructure, click Java and process management > Process definition > Java virtual machine > Custom properties.

[z/OS]Click System Administration > Deployment manager > Java and process management > Process definition > Control > Java virtual machine > Custom properties

[AIX Solaris HP-UX Linux Windows][IBM i]System Administration > Deployment manager > Java and process management > Process definition > Java virtual machine > Custom properties

[z/OS] System Administration > Node agent > nodeagent_ name > Java and process management > Process definition > Control > Java virtual machine > Custom properties

[AIX Solaris HP-UX Linux Windows][IBM i] System Administration >Node agent > nodeagent_name > Java and process management > Process definition > Java virtual machine > Custom properties

If the custom property is not present in the list of already defined custom properties, create a new property. Then, enter the property name in the Name field and a valid value in the Value field. Restart the server to complete your changes.

You can use the Custom properties page to define the following properties for use by the Java virtual machine.

adminconsole.certLogin

Set this property to true when you configure the administrative console to support certificate login.

When this property is set to true and a login error occurs, the administrative console displays an error page that does not include the username and password fields. The value for this property is case-sensitive. The default value for this property is false.

For more information, see Certificate login.

[9.0.5.18 or later]

adminconsole.ssoLogin

When this property is set to true and a login error occurs, the administrative console displays an error page that does not include the username and password fields. If the logon.jsp file is hit in the console, examine the displayed message for the login URL. The message informs you that an alternative form of login is in use and, to access the console, use the https://host_name:port_number/ibm/console URL. The value for this property is case-insensitive. The default value for this property is false.

allowDeployerRoleGenPluginCfg

Set this custom property to true to enable users with the deployer role to generate and configure the plugin-cfg.xml file. After you set and save this custom property, restart the application server.

If the custom property is missing or its value is set to false, the following situations occur when the user has the deployer role permissions:
  • The generation and configuration processes fail.
  • An error message is issued.

To disable this function, delete the custom property or set its value to false.

Also, you can set this custom property from the command line with the wsadmin tool and the following Jacl script:
#-------------------------------------------------------------------------
# setAllowDeployer.jacl - Jacl script for setting a the allowDeployerRoleGenPluginCfg
property 
# of the web server plug-in for WebSphere Application Server
#-------------------------------------------------------------------------
#    This Jacl file modifies the server.xml file for an application
server. This script is designed 
#    to be invoked while the AppServer is running.
#
#    Here is an example of how to invoke the script:
#	   wsadmin -f setAllowDeployer.jacl &ltnodeName> &ltserverName> &ltenableValue>

#------------------------------------------------------------------------
proc printUsageAndExit {} {
     puts " "
     puts "Usage: wsadmin -f setAllowDeployer.jacl &ltnodeName> <serverName> <boolEnable>"
     puts "Note: enableValue argument is of type boolean; valid values
are true and false."	
     exit
 }
 if { [llength $argv] >= 3 } {
     set nodename [lindex $argv 0]
     set servername [lindex $argv 1]
     set enablevalue [lindex $argv 2]
 } else {
     printUsageAndExit
 }  

set cellname [$AdminControl getCell]
set propname "allowDeployerRoleGenPluginCfg" 
set propdesc "Allow conditional deployer role for plug-in generation
and propagation" 
set required "false"  

set jvm [$AdminConfig getid 
/Cell:${cellname}/Node:${nodename}/Server:${servername}/JavaProcessDef:/JavaVirtualMachine:/]

$AdminConfig modify $jvm [subst {{systemProperties {{{name {$propname}}
{value {$enablevalue}} 
{description {$propdesc}} {required {$required}}}}}}]  
$AdminConfig save   

exit 0
Usage:
wsadmin -f setAllowDeployer.jacl node_name server_name true

ArchiveUtil.allowWtpToUseSystemTemp

Set this property on the deployment manager to reduce disk space usage in the system temp directory defined by the Java system property, java.io.tmpdir, during deployment manager startup. This setting is only necessary if you do not have enough space allocated for the system temp directory. The amount of space required is at least the size of the largest installed application in expanded form. Setting this property to false redirects application expansion to the <WAS_PROFILE_HOME>/wstemp/wtptmp directory.

The default value is true.
  • If the value is true during deployment manager startup, applications are expanded to the system temp directory defined by the Java system property, java.io.tmpdir.
  • If the value is false during deployment manager startup, applications are expanded to the <WAS_PROFILE_HOME>/wstemp/wtptmp directory.

com.ibm.cacheLocalHost

Set this property to true to instruct the IBM SDK for Java to cache the IP address that is returned from java/net/InetAddress.getLocalHost for the life of the JVM. This property is a performance enhancement that is advised on all processes if the localhost address of a process does not change while it is running.

Avoid trouble: The address for servers configured using DHCP change over time. Do not set this property unless you are using statically assigned IP addresses for your server.

com.ibm.apc.nodeMMTimeout

When you set a node into maintenance mode and APC is set to automatic, by default, the deployment manager will time out the maintenance mode operation after 20 minutes. This property can be changed by setting the generic JVM argument -DnodeMMTimeout on the deployment manager and restarting the deployment manager. For example, you could set -DnodeMMTimeout to 60 to allot 60 minutes before the maintenance mode operation is timed out. Relatedly, apcConcurrentStartSize can help in reducing the time that it takes for APC to handle the maintenance mode operation, and other considerations such as min != max on the dynamic cluster might reduce the chances that APC needs to make changes.

com.ibm.config.allow.set.session.timeout

Set this custom property to revert the behavior of PI20040 as it applies to the web.xml element session-timeout.

Leave this custom property unset to obtain the updated behavior that is provided by PI20040.

The default behavior is to obtain the updated behavior of PI20040. The updated behavior is correct according to the Servlet specification, and is the new default behavior when you write session-timeout. values. The custom property is provided to re-enable the prior behavior.

com.ibm.config.eclipse.wtp.enablejemtrim

Use this custom property to enable the pruning of intermediate DOM nodes after the XML parse of the metadata occurs for an application.

Avoid trouble: The setting for this property should match the setting for the com.ibm.config.eclipse.wtp.enablexmltrim custom property. Leave both of these properties unset, set both to false, or set both to true.

The default value is false.

com.ibm.config.eclipse.wtp.enablexmltrim

Use this custom property to enable the sharing of JavaClass instances, and the conversion of expanded JavaClass and JavaMethod objects to lightweight proxies after they are used.

Avoid trouble: The setting for this property should match the setting for the com.ibm.config.eclipse.wtp.enablejemtrim custom property. Leave both of these properties unset, set both to false, or set both to true.

The default value is false.

com.ibm.config.eclipse.wtp.jem=finer

Use this custom property to generate a trace from code areas that are enabled when the com.ibm.config.eclipse.wtp.enablejemtrim custom property is set to true.

Avoid trouble: This property might impact performance. Therefore, this property should be specified only if a problem occurs during the pruning of intermediate DOM nodes after the XML parse of the metadata occurs for an application, and you need to obtain additional information to diagnose the cause of that problem.

com.ibm.config.eclipse.wtp.xmltrim=finer

Use this custom property to generate a trace from code areas that are enabled when the com.ibm.config.eclipse.wtp.enablexmltrim custom property is set to true.

Avoid trouble: This property might impact performance. Therefore, this property should be specified only if a problem occurs with the sharing of JavaClass instances, or the conversion of expanded JavaClass and JavaMethod objects to lightweight proxies after they are used, and you need to obtain additional information to diagnose the cause of that problem.

com.ibm.disableCommonsElCache

Set the com.ibm.wsspi.jsp.disableElCache Web container custom property to true to disable the commons-el expression cache if you are experiencing out of memory conditions because the hash maps are held by the expression evaluator.

The default value is false.

[Linux][AIX][z/OS][HP-UX][IBM i][Solaris]

com.ibm.eclipse.wtp.allowRootedEntries

In previous service releases, properties files in the root directory of an enterprise archive (EAR) file are not read properly. Thus, in this service release and later, the behavior is changed so that the class path in META-INF and MANIFEST.MF files are treated as a relative URI. To revert to the original behavior, set the com.ibm.eclipse.wtp.allowRootedEntries to true.

com.ibm.ejs.ras.disablerasnotifications

Use this property to disable and enable RAS service. When you set this property to true, RAS services are disabled. The default value for this property is false.

com.ibm.ejs.ras.writeSystemStreamsDirectlyToFile

Use this custom property to support JSR-47 customized logging to write to the SystemOut stream without the format of WebSphere® Application Server. The format of WebSphere Application Server includes information, for example, timestamp, thread ID, and some others. An application might not want this information to appear in the SystemOut stream (or perhaps prefer the information to appear in a different format). To disable the format of WebSphere Application Server, set this custom property to true.

com.ibm.ejs.sm.server.quiesceInactiveRequestTime

Use this custom property to specify, in milliseconds, how fast IIOP requests through the Object Request Broker (ORB) can be received and processed. For example, if you specify a value of 5000 for this property, the server does not attempt to shut down until incoming requests are spaced at least 5 seconds apart. If the value specified for this property is too large, when the application server is stopped from the administrative console the following error message might be issued:
An error occurred while stopping Server1. Check the error logs for more information.

The default value is 5000 (5 seconds).

If you decide to use this custom property, you can specify it as a JVM custom property for either an application server, a node agent, or a deployment manager. It is typically set as an application server JVM custom property.

com.ibm.ejs.sm.server.quiesceTimeout

Use this custom property to specify, in seconds, the overall length of the quiesce timeout. If a request is still outstanding after this number of seconds, the server might start to shut down. For example, a value of 180 would be 3 minutes. If the quiesce time is exceeded, the workload regulator rejects all incoming requests and server shutdown occurs.
Avoid trouble: The WTRN0036W message is issued when outstanding transactions exist while server is in the quiesce state.
The default value is 180.
Avoid trouble: If the timeout value is set to zero the quiesce function is disabled.

If you decide to use this custom property, you can specify it as a JVM custom property for either an application server, a node agent, or a deployment manager. It is typically set as an application server JVM custom property.

com.ibm.ffdc.log

Use this custom property to specify where to store first failure data capture (FFDC) data when a failure occurs during product runtime processing. The FFDC feature instantly collects information about the events and errors that lead up to the failure. The captured data can then be used to analyze the problem. After the information is collected, and saved in a log file, FFDC returns control to the affected engines.

Example of use, specifying a folder location for the log file:
Name: com.ibm.ffdc.log
Value: C:\my_FFDC_CP\
Example of use, specifying an actual file name for the log file:
Name: com.ibm.ffdc.log
Value: C:\my_FFDC_CP_log

com.ibm.websphere.application.updateapponcluster.waitforappsave

Use this custom property to specify, in seconds, the amount of time that you want the deployment manager to wait for the extension tasks of the save operation to complete before it starts the updated application.

Avoid trouble: This property is only valid if it is specified for a deployment manager.

Usually during the save operation for an application update that is being performed by using the rollout update process, the extension tasks of the save operation that is run as a background operation in a separate thread. If the main thread of the save operation completes before the synchronization portion of the rollout update process, the updated application fails to start properly.

When you add this custom property to your deployment manager settings, if the extension tasks of the save operation do not complete within the specified amount of time, the rollout update process stops the application update process, preventing the application from becoming corrupted during the synchronization portion of the rollout update process.

The default value is 180.

[z/OS]

com.ibm.websphere.bean.delete.sleep.time

Use this property to specify the time between sweeps to check for timed out beans. The value is entered in seconds. For example, a value of 120 would be 2 minutes. This property also controls the interval in the Servant process that checks for timed out beans still visible to the enterprise bean container.

The default value is 4200 (70 minutes). The minimum value is 60 (1 minute). The value can be changed through the administrative console. To apply this property, you must specify the value in both the Control and Servant JVM Custom Properties.

com.ibm.websphere.collective.utility.autoAcceptCertificates

To automatically trust SSL (Secure Sockets Layer) certificates, set this property to true.

com.ibm.websphere.console.application.rolloutUpdate.disableAutoSync

Set this property to true on the deployment manager to disable the node synchronization before a configuration save is done for the application update. The default value is false. The application rollout update operation uses this property.

com.ibm.websphere.console.server.restart.delay

Set this property on the deployment manager when you are restarting the server to allow a wait period between the issuing of the stop and the issuing of the start. Occasionally, a restart might fail if all the necessary resources are not yet released after the server is stopped.

Set the value to an integer to specify the number of milliseconds for the wait period. If this property is set, but a value other than an integer is specified, the default wait period is 10000 ms. However, if this property is not set, no wait period exists.

com.ibm.websphere.deletejspclasses

Use this property to indicate that you want to delete JavaServer Pages classes for all applications after those applications are deleted or updated. The default value is false.

Avoid trouble: In a Network Deployment environment, this property applies to the WebSphere Application Server.

Set this property on a node agent when the application server runs in a federated cell.

com.ibm.websphere.deletejspclasses.delete

Use this property to indicate that you want to delete JavaServer Pages classes for all applications after those applications are deleted, but not after they are updated. The default value is false.

Avoid trouble: In a Network Deployment environment, this property applies to the WebSphere Application Server.

Set this property on a node agent when the application server runs in a federated cell.

com.ibm.websphere.deletejspclasses.update

Use this property to indicate that you want to delete JavaServer Pages classes for all applications after those applications are updated, but not after they are deleted. The default value is false.

Avoid trouble: In a Network Deployment environment, this property applies to the WebSphere Application Server.

Set this property on a node agent when the application server runs in a federated cell.

com.ibm.websphere.ejb.UseEJB61FEPScanPolicy

Use this property to control whether the product scans pre-Java EE 5 modules for more metadata during the application installation process or during server startup. By default, these legacy EJB modules are not scanned.

The default value is false.

You must set this property to true for each server and administrative server that requires a change in the default value.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.ejbcontainer.expandCMPCFJNDIName

The EJB container should allow for the expansion of the CMP Connection Factory JNDI Name when a user's JNDI name contains a user-defined Application Server variable. The custom property, com.ibm.websphere.ejbcontainer.expandCMPCFJNDIName, makes it possible to expand the CMP Connection Factory JNDI Name.

If the value is true, which is the default, the EJB Container expands a variable when found in the CMP Connection Factory JNDI Name. If the value is set to false, the EJB Container does not expand a variable.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.ejbcontainer.includeRootExceptionOnRollback

Use this Enterprise JavaBeans (EJB) custom property to enable the following functions:
  • Allow the root cause of a transaction rollback to be included in a TransactionRolledbackLocalException if the transaction is issued by a local caller.
  • Allow the root cause of a transaction rollback from a commit method to be included in a TransactionRolledbackLocalException even if the transaction is issued by a remote caller.
  • Allow Heuristic Exceptions to be returned rather than a TransactionRolledbackLocalException, for a local client, or a TransactionRolledbackLocalException, for a remote client.
  • Allow a RemoteException to be returned from a remote EJB method even if that method is running in the context of the transaction of the call. For example, consider that EJB1, method m1, begins a transaction and calls EJB2, method m2, where m2 causes an unhandled exception. In this case, the EJB Specification mandates that m1 receives a TransactionRolledbackException. Setting this property to true allows a RemoteException that includes any nested exceptions to be returned instead of a TransactionRolledbackException even though this function is contrary to the EJB Specification requirement.

To enable this function, set this property to true. To disable this function, set this property to false.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.jaxrpc.stub.typemapping.per.thread

Use this property to indicate whether the JAX-RPC runtime should use thread specific type mapping objects.

The JAX-RPC runtime uses a single TypeMappingRegistry object for all of the JAX-RPC clients. This design is intentional, and allows you to create a JAX-RPC stub and use it on multiple threads. However, the singleton TypeMappingRegistry gets contaminated if multiple JAX-RPC Web services with different mappings are invoked concurrently. Even though this situation is uncommon, if it exists on your system, you can set the com.ibm.websphere.jaxrpc.stub.typemapping.per.thread custom property to true to indicate to the JAX-RPC runtime that it can use thread-specific type mapping objects. These separate mapping objects avoid the contamination issue, and the various web service calls will succeed.

The default value is false.

Avoid trouble: You should not use this custom property unless you encounter a situation where the singleton TypeMappingRegistry gets contaminated. Enabling this property might regress applications that depend on access to the same JAX-RPC stub across multiple threads.

com.ibm.websphere.jaxrs.server.DisableIBMJAXRS20Engine

Use this property to disable the JAX-RS 2.0 integration run time from automatically processing your JAX-RS applications. The default value is false.
Avoid trouble: Setting this property to a value of true also disables the IBM JAX-RS runtime integration with EJB and JCDI.

com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine

Use this property to disable the JAX-RS 1.1 integration run time from automatically processing your JAX-RS applications. The default value is false.
Avoid trouble: Setting this property to a value of true also disables the IBM JAX-RS runtime integration with EJB and JCDI.

com.ibm.websphere.logging.useJULThreadID

Use this property to control thread ID type that is used in WebSphere Application Server log files.

When you set this property to true, LogRecord instances are used to retrieve thread ID. When you set this property to false, Thread instances are used to retrieve thread ID.

The default value is false.

For transitioning users: Beginning with Version 8.5, the default value for this property is false. In earlier versions, the default value for the com.ibm.websphere.logging.useJULThreadID property is true.

com.ibm.websphere.management.application.client.EnvEntry_processBindings

Use this property to specify how an environment entry value is handled during an application deployment.

If this property has a value of false, an environment entry value is read from, and written to, the deployment descriptor. Any environment entry value that is specified in the XML bindings is ignored.

If this property is not specified, or has a value of true, an environment entry value that is specified in the XML bindings is given preference over the value that is specified in the deployment descriptor. The environment entries from annotations are processed. The default value is true.

If an application is deployed with com.ibm.websphere.management.application.client.EnvEntry_processBindings enabled and is then exported to be deployed on a pre-Version 8.0 environment, the environment entry value in the XML bindings is not recognized by both the deployment and runtime environments.

If an application is deployed with com.ibm.websphere.management.application.client.EnvEntry_processBindings enabled and is then exported to be deployed on a Version 8.0 or later environment, the environment entry value in XML bindings are not recognized by the deployment environment but are recognized by the runtime environment.

Avoid trouble: Do not include the com.ibm.websphere.management.application.client.EnvEntry_processAnnotations custom property in the JVM configuration settings if the com.ibm.websphere.management.application.client.EnvEntry_processBindings custom property is set to true.
Avoid trouble: If your environment contains pre-Version 8.0 nodes and an application is targeted to a pre-Version 8.0 node, set this property with a value of false if you have an environment entry that is defined in the application and the environment entry value is going to be provided or changed during deployment including install, edit, or update. Otherwise, the application deployment fails.

com.ibm.websphere.management.application.fullupdate

Use this property to specify that when any of your applications are updated, you want the binaries directory erased and the content of the updated EAR file completely extracted.

If this property is not specified, each changed file within an updated EAR file is individually updated and synchronized in the node. This process can be time consuming for large applications if many files change.

Setting the com.ibm.websphere.management.application.fullupdate property to:
  • true specifies that, when any of your applications are updated, you want the binaries directory erased and the content of the updated EAR file completely extracted.
  • false specifies that, when any of your applications are updated, you want only the changed files within that EAR file updated on the node and then synchronized.
Avoid trouble:
  • Use the com.ibm.websphere.management.application.fullupdateapplication_name property if you want only to do a full replacement for a specific application instead of all of your applications.
  • You must define this property in the deployment manager JVM.

com.ibm.websphere.management.application.fullupdate.application_name

Use this property to specify that when the specified application is updated, you want the binaries directory for that application erased and the content of the updated EAR file completely extracted.

If this property is not specified, each changed file within the updated EAR file for the specified application is individually updated and synchronized in the node. This process can be time consuming for large applications if many files change.

Setting the com.ibm.websphere.management.application.fullupdate.application_name property to:
  • true specifies that when the specified application is updated, you want the binaries directory erased and the content of the updated EAR file completely extracted.
  • false that when the specified application is updated, you want only the changed files updated on the node and then synchronized.
Avoid trouble:
  • Use the com.ibm.websphere.management.application.fullupdate property if you want the binaries directory erased and the content of the updated EAR file completely extracted whenever any of your applications are updated.
  • You must define this property in the deployment manager JVM.

com.ibm.websphere.management.application.keepExistingSharedLibraries

Use this property to specify how shared library mappings are handled during application updates.

When this property is set to false, then the shared libraries that are specified during the application update operation should replace the original shared library settings. False is the default setting.

When this property is set to true, after an application is updated, the application and module configurations include the original shared library settings in addition to those that are specified during the update operation.

com.ibm.websphere.management.application.persistWebContext

Use this property to specify whether the context root and virtual host information for web modules is persisted in the deployment.xml file. If this property is not specified, application deployment has to rely on annotation processing to read the context root and virtual host information, which impacts the performance of application deployment

When this property is set to true, the context root and virtual host information for web modules is persisted in the deployment.xml file, the persisted data is used for application deployment validation, which improves the performance of application deployment.

The default value is false, which means that the context root and virtual host information for web modules is not persisted in the deployment.xml file.

com.ibm.websphere.management.application.sync.recycleappasv5

Use this property to specify that you want your application recycling behavior to work the same way as this behavior worked in versions previous to Version 6.x of the product.

In Version 6.x and higher, after an application update or edit operation occurs, depending on which files are modified, either the application or its modules are automatically recycled. This recycling process occurs for all application configuration file changes, and all non-static file changes.

However, in versions previous to Version 6.x of the product, an application is recycled only if the Enterprise Archive (EAR) file itself is updated, or if the binaries URL attribute changes. An application is not recycled if there is a change to the application configuration file.

Setting the com.ibm.websphere.management.application.sync.recycleappasv5 property to:
  • true specifies that you want your application recycling behavior to work the same way as this behavior worked in versions previous to Version 6.x of the product.
  • false specifies that you want your application recycling behavior to work according to the Version 6.x and higher behavior schema.

The default value is false.

Avoid trouble: You must define this property in the node agent JVM. However, when you define this property, you can specify a scope of cell if you want the setting to apply to all of the nodes within a specific cell. If this property is set at both the cell and node agent level, the node agent setting takes precedence for that particular node agent.
Avoid trouble: Do not set this property if using Application Edition Manager to perform the rollout.

com.ibm.websphere.management.application.updateClusterTask.serverStopWaitTimeout

Use this property to specify, in seconds how long the deployment manager waits for a server to stop completely in the $AdminTask updateAppOnCluster task. By default, the deployment manager waits for 600 seconds. The amount of time that you specify for this property should be greater than the longest amount of time that it takes to stop a server in the cluster.

This property can only be specified if you are using Version 7.0.0.1 or higher.

Avoid trouble: This property is only valid if it is specified for a deployment manager.

com.ibm.websphere.management.application.updatesync.appExpansionTimeout

Use the property to specify how long the deployment manager waits to start an application server following an application update. This wait time enables the binaries for the application to be expanded to their directories after the update process completes. The amount of time that you specify for this property should be the maximum amount of time that any of the applications that reside in a node, take to fully expand their binaries.

By default, the rollout update function waits for 60 seconds, for each application expansion to occur following an update to one or more applications. Because the rollout function can be used to update multiple applications at the same time, the default value for this property is n x 60 seconds, where n is the number of applications that are being updated.

The default wait time might not be sufficient for larger applications. If after your applications are updated one or more of these applications do not start when the server starts, you might have to specify a longer length of time for the rollout update function to wait before starting the server.

Avoid trouble: This property is only valid if it is specified for a deployment manager.

com.ibm.websphere.management.configservice.getServerLogRootFromTemplate

Use this property to specify whether the value specified for the SERVER_ROOT variable that is defined in a server template, or the value of {LOG_ROOT}/serverName should be used when you create an application server or cluster member.

When you create an application server or cluster member, the value of {LOG_ROOT}/serverName is always used instead of the value of theSERVER_ROOT variable defined in an existing server template. If, when you create an application server or cluster member, you want to use the value of the SERVER_ROOT variable that is defined in a server template, set this property to true.

If you use this custom property, it must be set for the deployment manager.

When using wsadmin in connected mode, use the AdminTask.setJVMSystemProperties command to set this property at the deployment manager level.

When using wsadmin in LOCAL mode (conntype=none), this property can be passed in as a javaoption:
wsadmin -conntype none -javaoption
"-Dcom.ibm.websphere.management.configservice.getServerLogRootFromTemplate=true"

com.ibm.websphere.management.configservice.sessionIdUniqueness

Use this property to prevent duplicated configuration session or workspace ID generation. If different processes create randomly generated configuration session or workspace IDs within the same millisecond, it is possible for the IDs to be identical.

To prevent duplicated configuration session or workspace ID generation, add this property to your application server settings and set it to random. An example of setting this custom property follows:
javaoption command switch:
wsadmin -javaoption 
"-Dcom.ibm.websphere.management.configservice.sessionIdUniqueness=random"

You can use either the AdminTask.setJVMSystemProperties wsadmin command or the administrative console to specify this custom property.

If the application server is part of a federated cell, after you save your changes, you must synchronize the node, and restart each server before this configuration change goes into effect.

If you decide to use this custom property, you can specify it as either a deployment manager or an application server JVM custom property.

com.ibm.websphere.management.configservice.validatePropNames

Use this property to specify whether to enforce character restrictions for custom property names, and for the name value of Property and J2EEResourceProperty configuration objects in wsadmin commands.

You can use one of the following methods to turn off character validation for custom property names, and the name value of Property and J2EEResourceProperty configuration objects in wsadmin commands.
  • Set the com.ibm.websphere.management.configservice.validatePropNames Java system property to false in the Java virtual machine (JVM) for the deployment manager server.
  • Set the com.ibm.websphere.management.configservice.validatePropNames property using the -javaoption parameter when you use the wsadmin tooling in the local mode.
    wsadmin -conntype none -javaoption 
    "-Dcom.ibm.websphere.management.configservice.validatePropNames=false"
[z/OS]

com.ibm.websphere.management.jmx.random

Use this property to enable the controller to randomly select an initial servant from the servant pool to process a Java Management Extensions (JMX) connector requests instead of automatically assigning the request to the hot servant.

By default, when multiple servants are enabled and the application server receives a JMX connection request, the application server assigns the request to the first servant, which is also referred to as the hot servant. This strategy minimizes the risk that the request is assigned to a servant that is paged out. However, if the first servant has a heavy workload, requests to that servant eventually fail. Therefore, the advantage of using the random algorithm is that the assigned servant is probably not already handling many other requests. The disadvantage of using the random algorithm is that the selected servant might be paged out and have to be paged back in before it can handle the request.

Setting the com.ibm.websphere.management.jmx.random property to:
  • true specifies that the controller will randomly select an initial servant from the servant pool to process a JMX connector requests.
  • false specifies that the controller will assign all JMX connector requests to the hot servant.

If you decide to use this custom property, you must specify it as a JVM custom property for the controller.

com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool

Use this property to control the number of threads that can be included in a newly created thread pool. A dedicated thread is created to start each application server Java virtual machine (JVM). The JVMs with dedicated threads in this thread pool are the JVMs that are started in parallel whenever the node agent starts.

You can specify an integer from 0 - 5 as the value for this property. If the value you specify is greater than 0, a thread pool is created with that value as the maximum number of threads that can be included in this newly created thread pool. The following table lists the supported values for this custom property and their effect.

Table 1. Supported values for com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool . The table includes the custom property value and the effect of the custom property.
com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool Effect
Property com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool is set to 0 or not specified. The node agent starts up to five JVMs in parallel.
Property com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool is set to 1. The node agent starts the JVMs serially.
Property com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool is set to an integer value between 2 and 5. The node agent starts a number of JVMs equal to the specified value in parallel.

For example, suppose the node agent has 10 JVMs that are set as running state, which means they are started whenever the node agent starts. If you specify 3 for this property, whenever you stop and start the node agent, only three of the 10 JVMs are started in parallel when the node agent starts.

Avoid trouble:
  • If you are using the administrative console, and specify com.ibm.websphere.management.nodeagent.bootstrap.maxthreadpool as the name of a new JVM custom property for the node agent, you must specify a value in the Value field for this new custom property. You receive an error message if you do not specify a value.
  • If you pass a blank value to the property from the command line, the blank value is considered an illegal value, and the default behavior of the node agent is restored.

This property is not specified by default. If you decide to use this custom property, you must specify it as a node agent JVM custom property.

com.ibm.websphere.management.nodesync.skipWebServerTarget

Use this property to control whether application binaries are distributed to target nodes in which the application only targets web servers.

By default, the custom property value is set to false, which causes the application server to distribute application binaries to target nodes. If you set this custom property to true, the application server does not distribute application binaries to target nodes that contain web server targets only.

Important: System behavior is not affected by this custom property value. Also, it is not affected by the node synchronization change that led to a change in this custom property value for target nodes that contain application server targets. These statements are true regardless of whether web server targets are included in that same node.
The following sample output shows the isAppReady output, which is generated for web server-only target nodes when you set this custom property to true:
wsadmin>$AdminApp isAppReady SuperApp 
ADMA5071I: Distribution status check started for application SuperApp. 
WebSphere:cell=IBMCell10,node=IBMNode30,distribution=true,expansion=skipped 
ADMA5011I: The cleanup of the temp directory for application SuperApp is complete. 
ADMA5072I: Distribution status check completed for application SuperApp. 
true
You can set this custom property for the deployment manager, but not the application server or node agent. You can use the administrative console or complete the following steps using a command-line:
  1. Start the wsadmin scripting tooling from the profile_root/bin directory. You need to start the .wsadmin.bat or wsadmin.sh command within that directory.
  2. Run one of the following commands:
    Using Jacl
    $AdminTask setJVMSystemProperties {-serverName server_name -nodeName node_name -propertyName com.ibm.websphere.management.nodesync.skipWebServerTarget -propertyValue true}
    Using Jython string
    AdminTask.setJVMSystemProperties('[-serverName server_name -nodeName node_name -propertyName com.ibm.websphere.management.nodesync.skipWebServerTarget -propertyValue true]')
    Using Jython list
    AdminTask.setJVMSystemProperties (['-serverName', 'server_name', '-nodeName', 'node_name' '-propertyName', 'com.ibm.websphere.management.nodesync.skipWebServerTarget', '-propertyValue', 'true'])

    where the server_name and node_name variables are specific to your environment.

  3. Restart the deployment manager.

com.ibm.websphere.management.processEmbeddedConfigGlobal

Use this property to globally enable or disable processing of the embedded configuration of enhanced application Enterprise Archive (EAR) files during deployment. An enhanced EAR file results when you export an installed application.

This custom property overrides globally the default setting for the Process embedded configuration (-processEmbededConfig) option. By default, Process embedded configuration is set to true (selected) for enhanced EAR files and false (deselected) for all other EAR files. The Process embedded configuration setting determines the directory to which the product expands an enhanced EAR file during deployment of the enhanced EAR file. If you exported an application from a cell other than the current cell and did not specify the $(CELL) variable for Directory to install application when first installing the application, setting Process embedded configuration to false during deployment of an enhanced EAR file extracts the enhanced EAR file in the app_server_root/profiles/installedApps/current_cell_name directory. Otherwise, if Process embedded configuration is set to true, the enhanced EAR file is expanded in the app_server_root/profiles/installedApps/original_cell_name directory, where original_cell_name is the cell on which the application was first installed. If you specified the $(CELL) variable for Directory to install application when you first installed the application, installation expands the enhanced EAR file in the app_server_root/profiles/installedApps/current_cell_name directory.

When this processEmbeddedConfigGlobal custom property is set to false, the product does not process the embedded configuration of any application, including enhanced EAR files, during deployment. After you set processEmbeddedConfigGlobal to false, the product does not process the embedded configuration of enhanced EAR files. However, when deploying an individual enhanced EAR file, you can override this false setting by explicitly setting Process embedded configuration to true.

When this processEmbeddedConfigGlobal custom property is set to true, the product processes the embedded configuration of enhanced EAR files.

Regardless of whether this processEmbeddedConfigGlobal custom property is set to true or false, the product deploys applications that do not have embedded configurations as usual. The setting has no effect on deployment.

[z/OS]Avoid trouble: If you decide to use this custom property, you must either specify this property and its value as a JVM custom property for both the Control and Servant, or add this property to the wsadmin.properties file.
[AIX Solaris HP-UX Linux Windows][IBM i]Avoid trouble: If you decide to use this custom property, you must either specify this property as a JVM custom property for the deployment manager, or add this property to the wsadmin.properties file.
[z/OS]

com.ibm.websphere.management.registerServerIORWithLSD

Use this property to control whether a federated server registers with the Location Service Daemon (LSD). Normally, a federated server requires the node agent to be running. To direct the server to not register with the LSD and remove its dependency on an active node agent, the com.ibm.websphere.management.registerServerIORWithLSD JVM custom property must be set to false, and the ORB_LISTENER_ADDRESS must be set to a value greater than 0 so that the ORB listens at a fixed port. The setting for this property is ignored if the ORB_LISTENER_ADDRESS property is set to 0 (zero) or is not specified, and the federated server registers with the LSD.

Set this property to false if you want the server to run even when the node agent is not running. When this property is set to true, the federated server registers with the LSD. The default value is true.

[AIX Solaris HP-UX Linux Windows]Avoid trouble: This property already exists in the list of ORB Service custom properties. To change the setting for this custom property, in the administrative console, click Servers> Application Servers > server_name > session management > Container Services > ORB Service > Custom Properties > com.ibm.websphere.management.registerServerIORWithLSD

After you change the value for this custom property, you must do a full synchronization before this change is reflected in the server.xml file on the node. If you cannot start the node agent for the server, you must manually edit the server.xml file to change the value of this custom property from true to false.

When you set the com.ibm.websphere.management.registerServerIORWithLSD property to false, the server does not notify the node agent when it dynamically assigns the ORB_LISTENER_ADDRESS port. There also will not be any indirect Interoperable Object References (IORs) that the node agent can resolve to a server. All of the IORs become direct, which means that the node agent can only contact that server if a static ORB_LISTENER_ADDRESS has been assigned to that server.

Avoid trouble: If you set the com.ibm.websphere.management.registerServerIORWithLSD property to false and do not intend to use the high availability manager (HAManager) service and node agent process, then you should create a static routing table to enable static routing. Enabling static routing ensures that workload management (WLM) continues to function properly. You use com.ibm.websphere.management.registerServerIORWithLSD to prevent indirect IORs from being returned for any services being provided by the application servers (and having the node agent then map these indirect IORs to direct IORs).
The use of the node agent establishes a known port on the server side to which the client can send requests when the ports for the application servers are not known. Creating a static routing table and enabling static routing provides static ports for the application servers and make these ports available for use. With static ports, node agent processing is not necessary.
Note: With dynamic application server ports, you cannot use the static routing table. Node agent processing is required with dynamic application server ports because the client needs to obtain the new port information when the servers are restarted.

Setting the com.ibm.websphere.management.registerServerIORWithLSD property does not affect the use of either dynamic or static ports or the routing of requests by WLM. However, you do lose a potential level of failover provided by the node agents of the HAManager.

WLM processing is retained with weighted spraying of requests.

com.ibm.websphere.management.soapSocketConnectionTimeout

Use this property to specify, in seconds, how long a JMX SOAP connector socket should remain open. If you do not specify a value for this property, the JMX SOAP connector socket connection stays open indefinitely.

com.ibm.websphere.management.useUpdatedPropertyFiles

Use this property to create new mail sessions using the updated properties file template.

Set this property to true to use the updated properties file configuration template to create new mail sessions. The updated properties file configuration template will be used instead of the original properties file configuration template.

Best practice: You should enable com.ibm.websphere.management.useUpdatedPropertyFiles unless you used the original properties file template to extract WebSphere Application Server configuration objects to the property files.

After you set the system property, save the changes. If the application server is part of a federated cell, synchronize the node to propagate the changes. Restart each server for the changes to take effect.

This property is not enabled by default.

com.ibm.websphere.metadata.ignoreDuplicateRefBindingsInWebModules

Use this property to control whether the JVM ignores instances of duplicate reference bindings in the DTD file for a web module in a Java 2 Platform, Enterprise Edition (J2EE) version 1.3 application. Typically a MetaDataException occurs if the DTD file for a web module in a Java 2 Platform, Enterprise Edition (J2EE) version 1.3 application contains duplicate references.

The standards for the DTD file for a web module specifically state that the reference bindings must have a unique name fields. Therefore, an application that contains a web module that includes duplicate reference bindings is technically a non-compliant application.

Although the standards for the DTD file for a web module forbid a user from defining duplicate reference bindings, the JVMs in versions of the product that preceded 7.0 tolerate duplicate reference bindings. If you have DTD files for web modules in Java 2 Platform, Enterprise Edition (J2EE) version 1.3 applications that contain duplicate reference bindings, you can either remove the duplicate reference, or add this property to your JVM configuration settings, and set the property to true.

com.ibm.websphere.network.useMultiHome

[AIX Solaris HP-UX Linux Windows][IBM i]Use this property in a multihomed environment to indicate on which IP addresses the application server listens. In a multihomed environment, there is normally a specific IP address that the application server is restricted to listening on for Discovery and SOAP messages. Setting the com.ibm.websphere.network.useMultiHome property to:
  • true specifies that the product listens on all IP addresses on the host for Discovery and SOAP messages.
  • false specifies that the product only listens on the configured host name for Discovery and SOAP messages. If you set this property to false, you should have a host name that is configured on the product that resolves to a specific IP address.
  • null specifies that the product only listens on the default IP address only.
[z/OS]In a multihomed environment where the product is restricted to listen only on a specific IP address for Discovery and SOAP messages, set this property to false for the deployment manager, all application servers and all node agents. By default, the value of the property is true and the application server listens on all IP addresses on the host for Discovery and SOAP messages. If the property is set to false, the product only listens for Discovery and SOAP messages on the configured host name. If you set the property to false, you must also:
  • Have a host name configured on the product that resolves to a specific IP address.
  • Ensure that the end point property for the deployment manager, all application servers, and all node agents is set to this host name. For the deployment manager, the end points that must be set are CELL_DISCOVERY_ADDRESS and SOAP_CONNECTOR_ADDRESS. For the node agent and application servers, only the SOAP_CONNECTOR_ADDRESS end point must be set.
You can change the value through the administrative console. Modify the defaults by setting the value for the server, deployment manager, and node agent. In order for these changes to take place, you must restart the server.

If you cannot contact the server, check the setting for com.ibm.websphere.network.useMultihome to ensure that it is correct. You can change the value through the administrative console. Modify the defaults by setting the value for the server, deployment manager, and node agent. You must restart the server before these changes take effect.

com.ibm.websphere.perf.tuning.disableRPARepositoryCache

Use this property to prevent the caching of server configuration details when RPA is disabled.

RPA uses a repository cache to store the configuration details of the server. This cache is initialized and configuration details are stored even if RPA and PMI are disabled. The repository cache can become quite large for extremely large installations, such as an installation that has over 3000 datasources. If you encounter performance problems because of the size of this repository cache, and RPA is disabled, add this property to your JVM configuration settings and set it to true. You should not use this custom property if RPA is enabled, or if you are not encountering performance problems because of the size of this repository cache.

Avoid trouble: You should not use this custom property if RPA is enabled, or if you are not encountering performance problems because of the size of this repository cache.

The default value for this property is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.resource.xmlConfigMaxLineLength

Use this property to specify a preferred maximum line length for XML configuration documents.

Lines at the beginning of a server.xml file often exceed 2048 characters in length. Lines exceeding 2048 characters in length cannot be processed by common text editing tools on some operating systems, such as z/OS. Therefore, when you edit and save a file that includes lines exceeding 2048 characters, the long lines are truncated. This truncation makes the configuration file unusable, and causes the server startup to fail.

If you specify a value for this property, when you edit and save an XML configuration document, the line breaks will occur as soon as possible after the number of characters in the line reaches the specified maximum number of allowable characters. The line breaks still occur at logical breaking points, which is why the line lengths might still exceed the specified maximum. Therefore, the value you specify for this property should take into account the number of characters that might exceed the specified maximum to ensure that none of the lines in the document exceed 2048 characters.

If you do not specify a value for this property, lines are allowed to grow to any length.

An acceptable value for this property is an integer in the range 80 to 2046, inclusive.

There is no default value for this property.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.sib.webservices.useTypeSoapArray

You can pass messages directly to a bus destination by overriding the JAX-RPC client binding namespace and endpoint address. However:
  • The default RPC-encoded web services string array message that is generated might not interoperate successfully with some target service providers.
  • The string array message produced is not exactly the same as the standard JAX-RPC equivalent, which can interoperate successfully.
Here are examples of the two different messages:
  • Service integration bus message:
    <partname env:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/ xsi:type='ns1:ArrayOf_xsd_string'>
      <item xsi:type='xsd:anySimpleType'>namevalue</item>
    </partname>
  • JAX-RPC client message:
    <partname xsi:type="soapenc:Array" soapenc:arrayType="xsd:string[1]">
      <item>namevalue</item>
    </partname>

Set this property to true to modify the default behavior and send a string array message that is fully compatible with standard JAX-RPC. Setting this property modifies the default behavior for all outbound JMS web services invocations sent from the service integration bus.

com.ibm.websphere.webservices.attachment.tempfile.expiration

Use this property to indicate, in seconds, an expiration time for an attachment on a Java API for XML Web Services (JAX-WS) or Service Component Architecture (SCA) client or service. If an attachment is not accessed for a period of time greater than the expiration time, the web service runtime is allowed to delete the attachment.

The JAX-RPC programming model allows access to attachments from incoming web service messages. The attachment might be accessed immediately, or might be stored for later processing. Therefore, the memory that is associated with the attachment might persist much longer than the lifetime of the web service interaction because there is no precise length of time after which the web service runtime can safely free the attachment.

For small attachments, the memory is eventually freed by the Java garbage collector.

For large attachments, the JAX-RPC runtime stores the attachment data in a temporary file, thereby allowing the runtime to process extremely large attachments without consuming memory. If the application does not access the attachment, or if the application does not adequately close the data handler associated with the attachment, the large temporary file is not freed. Over time, these temporary attachment files might accumulate on the file system if no expiration time is specified for these files.

Best practice: A setting of 600 is recommended if you need to specify an expiration time for these attachments. The default setting for this custom property is 0 seconds, which indicates that there is no expiration time for these attachments.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.attachements.maxMemCacheSize

Use this property to specify, in kilobytes, the maximum size of an attachment on the JAX-RPC client or service that can be written to memory. For example, if your web service needs to send 20 MB attachments, set the property to 20480.

When determining a value for this property, remember that the larger the maximum cache size, the more impact there is on performance, and, potentially, to the Java heap.

If you do not specify a value for this property, the maximum memory that is used to cache attachments is 32 KB, which is the default value for this property.

Supported configurations: To specify the maximum size of an attachment on the JAX-WS client or service, see the com.ibm.ws.websvcs.attachments.sizethreshold custom property.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.DisableIBMJAXWSEngine

Use this property to turn off web services annotation scanning at the server level. By default, web services annotation scanning is enabled at the server level.

To turn off annotation scanning at the application level, set the DisableIBMJAXWSEngine property in the META-INF/MANIFEST.MF of a WAR file or EJB module to true.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.http.OneWayConnectionRecycleTime

Use this property to specify, in seconds, how long the web services engine should wait before reusing a one-way connection. When a one-way connection is reused too quickly, a web service operation might fail on the client because of a timeout problem, such as a SocketTimeoutException.

When a value is specified for this property, one-way connections are not reset until the specified number of seconds elapses, starting from when the request is sent.

By default, this property is not set and one-way connections are reset immediately after the request is sent.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.http.waitingThreadsThreshold

Use this property to specify how many waiting connection requests are tolerated before releasing soft connections. A soft connection occurs when a client engine maintains connection objects for some hosts after the connection is closed. By default, after five threads are waiting for connections, the client engine releases the soft connections.

Avoid trouble: If all of the connections are being used, the custom property does not have an impact. In this situation, you can increase the maximum connection limit, the maximum number of threads, or both.

The default value for this custom property is 5.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.jaxrpc.client.publishwsdl

Specifies whether a WSDL file is published for a client web module. When this property is set to true, if an application contains a client web module, a WSDL file might be published for that client. If you do not want WSDL files published for your client applications, set this property to false.

The default value is true.

Avoid trouble:
  • WSDL file publication is not available for JAX-RPC applications that only contain a client.
  • This property cannot be used for JAX-WS applications.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.management.connector.http.header.includeProductVersion

Set this to a value of true to include server version information in the SOAP port HTTP response header. The default is false.

com.ibm.websphere.webservices.jaxws.setLinkValuePrecedence

Use this property to specify the precedence of link values in the JAX-WS runtime environment.

When this property is set to true, deployment descriptor link values have precedence over annotation link values.

The default value is false.

com.ibm.websphere.webservices.soap.enable.legacy.get.behavior

Starting in WebSphere Application Server Version 8, the SOAPMessage.getSOAPHeader and getSOAPBody methods throw a SOAPException if there is no corresponding element in the message. A system property, com.ibm.websphere.webservices.soap.IBMSOAPMessage.ENABLE_LEGACY_GETSOAP_BEHAVIOR, is provided to revert the behavior to return null rather than throw an exception. This system property is set using a JVM custom property, com.ibm.websphere.webservices.soap.enable.legacy.get.behavior. The default value for this JVM custom property is false. Setting this JVM property to true reverts to the previous behavior, which is to return a null for SOAPMessage.getSOAPHeader and getSOAPBody methods when there is no corresponding message.
Avoid trouble: The previous behavior of returning null is not compliant with the specification.

com.ibm.websphere.webservices.tempAttachDir

Use this property to specify the location on a storage device where you want the web services runtime to cache a copy of any attachment that is greater than 32 KB and that is being sent or received as part of a SOAP message.

For performance reasons, the web services runtime caches a temporary copy of any SOAP message attachment that is greater than 32 KB. If you do not specify a value for this property, the cached copy of the attachment is typically sent to the default temporary directory for your operating system.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.transport.jms.messageType

Use this property to control the JMS message type that is used by the web services engine for SOAP over JMS components when sending request and response messages. To specify a JMS BytesMessage (javax.jms.BytesMessage) object, set the property to BYTES to indicate that the body of the message is binary data. To specify a JMS TextMessage (javax.jms.TextMessage) object, set the property to TEXT to indicate that the body of the message is string data.

The default value for this custom property is BYTES.

To learn more about the SOAP over JMS message types, see the configuring SOAP over JMS message types information.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.transport.OPTIMIZE_HTTP_HEADERS

Prior to Version 8, a JAX-WS client application for WebSphere Application Server might send a SAVE_CONNECTION HTTP header in a SOAP message. This additional header ensures that proper processing occurs by the application server that is hosting the JAX-WS web service. However, this SAVE_CONNECTION header and the additional processing is not necessary if the application server for the client and the application server host for the web service are both using WebSphere Application Server Version 7.0 Fix Pack 3 or later.

You can set the com.ibm.websphere.webservices.transport.OPTIMIZE_HTTP_HEADERS custom property to false to enable the SAVE_CONNECTION header to ensure proper processing by older application server levels. By default, this custom property is set to true, which disables the JAX-WS client from sending the SAVE_CONNECTION header. If you need to change this default behavior, set the custom property to false on the application server that is hosting the JAX-WS client application.
Important: You must verify that the application server for the client and application server host for the web service are both using Version 7.0 Fix Pack 3 or later.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.transport.ssl.loadFromPolicyBinding

Use this property to control whether JAX-WS applications use SSL transport bindings or the system default SSL settings when the client is a managed client, and the client and the server are in different application servers.

When you create an SSL binding, this property is automatically added to the bindings file, and set to true. This setting enables SSL transport bindings to be used for JAX-WS applications when the client is a managed client, and the client and the server are in different application servers. If no bindings are attached to your JAX-WS application, set this property to false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.UseWSFEP61ScanPolicy

Use this property to control whether the product scans WAR 2.4 and earlier modules for JAXWS components and semi-managed service clients. By default, these legacy WAR modules are only scans for semi-managed service clients.

The default value is false.

You must set this property to true for each server and administrative server that requires a change in the default value.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.webservices.WSDL_Generation_Extra_ClassPath

Use this property to set the location of the shared class files. The wsgen command-line tool generates the necessary artifacts that are required for Java API for XML Web Services (JAX-WS) applications when they start from Java code. However, the wsgen command-line tool might not locate the necessary class files and append the following error messages to the log file:
Caused by: java.lang.NoClassDefFoundError
...
at com.ibm.ws.websvcs.wsdl.WASWSDLGenerator.wsgen(WASWSDLGenerator.java:521)
at com.ibm.ws.websvcs.wsdl.WASWSDLGenerator.generateWsdl(WASWSDLGenerator.java:183)
Use this property to provide the fully qualified location to the missing class files. With this custom property, you should provide fully qualified paths to multiple Java archives (JAR) and separate them using a semicolon (;). [z/OS]To avoid trouble, set this property to all JVM processes, including deployment manager, node agent and application server.
Important: If your base operating system for WebSphere Application Server is AIX®, Linux®, or UNIX, then use a colon (:) to separate the multiple Java archives (JAR) and directories.

Example: D:\sharedlibs;D:\libs\WSBean.jar

If you decide to use this custom property, you must specify it as an application server JVM custom property.

[z/OS]Remember: Set this property for both the controller and the servant. You can set this property for the servant as follows:
[z/OS]Avoid trouble: If you want to set this property on z/OS, you must set the property for both the Control and Servant JVM Custom Properties in the administrative console:
  • Application servers>[SERVER_NAME]>Process definition>Servant>Java Virtial Machine>Custom properties
  • Application servers>[SERVER_NAME]>Process definition>Control>Java Virtial Machine>Custom properties

com.ibm.websphere.websvcs.EJBPostInvokeCallOnException

Use this property to clean up the state and transaction following an exception in a web-services-invoked Enterprise JavaBeans (EJB).

On installations of WebSphere Application Server that use JAX-WS web services, when an exception occurs in an EJB that is invoked as part of a web service, transactions could remain active on a thread and prevent a transaction associated with the current XA transaction flow from resuming. Set this property to true to ensure complete cleanup of the state and transaction.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.websphere.workspace.decodeclustervariable

Use this property to ensure that variables defined at a cluster scope are expanded when they occur in log file paths defined in the administrative console.

If this property is not set, and cluster scoped variables are used to define log file paths, then the deployment manage might fail to retrieve the requested log file. Therefore, you should add this property to your deployment manager JVM settings if you include cluster scoped variables in your log file paths.

The default value is false.

If you decide to use this custom property, you must specify it as a deployment manager JVM custom property. After you set this property to true, you must restart the deployment manager before this change goes into effect.

com.ibm.websphere.wsrm.MaxSequenceBacklog

Use this property to configure the maximum number of messages on an outbound Web Services Reliable Messaging (WS-RM) sequence.

When the defined limit is reached, WS-RM rejects any new messages by throwing a javax.xml.ws.WebServiceException exception until the backlog decreases to less than the limit. Clients receiving an exception should retry the request.

There is no default value set. If no value set is defined, the backlog limit is infinite.

com.ibm.websphere.wsrm.MessageContextCacheSize

Use this property to set the maximum size of the in-memory cache to a positive integer value.

There is no default value set. The size of the cache is infinite.

com.ibm.websphere.wsrm.pollingInterval

Use this property to specify the frequency with which MakeConnection requests are made for a Sequence.

The value specifies the interval in milliseconds. The default behavior when the property is no set is 3000 milliseconds.

com.ibm.websphere.wsrm.retransmissionInterval

Use this property to specify the frequency with which WS-RM retransmits application messages when previous attempts to transmit the message have failed.

The value specifies the interval in milliseconds. The default behavior when the property is not set is 15000 milliseconds.

[z/OS]

com.ibm.websphere.zos.mvsservices.enable

When this property is set to true, you can use other properties such as com.ibm.websphere.zos.rollout.pauseresume. The default value for this property is false.

[z/OS]

com.ibm.websphere.zos.rollout.pauseresume

When this property is set to true, and property com.ibm.websphere.zos.mvsservices.enable is also set to true, you can pause and resume servers on z/OS. Setting these properties to true avoids the overhead of stopping and starting servers. The default value for this property is false.

[z/OS]

com.ibm.websphere.zos.rollout.pause.waitTimeout

You can use this property to specify how long a deployment manager waits for a server to pause. To use this property, the com.ibm.websphere.zos.rollout.pauseresume property must be set to true. The default value for this property is 10 seconds.

[z/OS]

com.ibm.websphere.zos.userdir.useRacfSettings

When this property is set to false, the user.dir is set by WebSphere Application Server code to ${USER_INSTALL_ROOT}, the part of the config filesystem path before the /profiles/ directory.

When this property is set to true, the user.dir is not set by WebSphere Application Server code. Instead, the user.dir is set by allowing the USS settings to take effect (user.dir == OMVS segment home directory).

Since WebSphere Application Server is not setting the property, you can define user.dir in the servant JVM custom properties to a value of your choice. Once you have defined user.dir, Java code will set it via the options file servant.jvm.options.

Note: Changing the user.dir changes only the value of the property. It does not change the current working directory of the JVM, which is set at boot time.
[9.0.5.6 or later]

com.ibm.websvcs.client.serializeSecurityContext

When a JAX-WS client is run on an application server, service calls can be slower when base security is enabled than when base security is not enabled. To adjust service call speed, you can use the com.ibm.websvcs.client.serializeSecurityContext property. When this property is set to false at the JVM level, the WebSphere® security context is not serialized to the web services message context for all JAX-WS web services client requests.

You can set this property to false to disable serializing the security context when you encounter errors during serialization. These errors can occur, for example, when non-serializable objects exist on the security context or when an LTPA token cannot be verified.

The default setting for the com.ibm.websvcs.client.serializeSecurityContext property is true.
Note: Do not set this property to false at the JVM level if any applications on the server use the Reliable Messaging policy set. If you do so, message CWSKA0112E: There is a conflict between the WS-ReliableMessaging quality of service managedPersistent and the BindingProvider property com.ibm.websvcs.client.serializeSecurityContext having the value false appears.
[9.0.5.1 or later]

com.ibm.ws.amm.discriminator.enablePH11818

Set this option to true to prevent classes from being scanned for annotations solely because they implement the java.util.EventListener interface.

For example, an annotation such as @Resource that is intended as a Spring annotation is treated as a Java EE annotation instead because its class implements the java.util.EventListener interface. To correct this problem, set this custom property to true.

When the value is false, classes that implement the java.util.EventListener interface are scanned for annotations during application deployment. The value defaults to false to avoid affecting existing applications that depend on annotation scanning during deployment.

This property can also be enabled for a specific EAR file or WAR file by adding the following line to the /META-INF/MANIFEST.MF file of the EAR file or WAR file:
IBM-ENABLE-PH11818 : true
Avoid trouble: The MANIFEST.MF file has formatting rules. For example, the file must end with a new line or carriage return. The last line of the file is not parsed properly if it does not end with a new line or carriage return.

com.ibm.ws.amm.reduce.warning.messages

Set this option to true to reduce the number of warning messages emitted during annotation scanning.

Annotation scans must process class references for all classes of applications. Scans are performed when applications are deployed, and when applications are started. The annotation scans emit warning messages for class references that do not resolve. Warnings similar to the following one are displayed in the server logs:
[17/04/06 9:46:59:211 JST] 000000b7 annotations   W 
com.ibm.ws.amm.scan.context.ScannerContextImpl getInputDataForClass 
Failed to open resource [ org/apache/struts2/views/jsp/ui/ActionErrorTag.class ] from module [ <module_name>.war ]

In many cases, the warning indicates that classes are missing from the application, which is a serious problem. In other cases, the class reference occurs in code that is not used by the application, and the failure to resolve the reference is harmless. When the class reference fails to resolve but the failure is harmless, you can reduce the number of warning messages emitted.

The default behavior is false. When the value of the option is false, the warning messages that are emitted during annotation scanning are displayed in the server logs.

com.ibm.ws.amm.require.produces.annotation.for.cdi

WebSphere Application Server incorrectly ignores the following annotations (@EJB, @WebServiceRef, @PersistenceContext, @PersistenceUnit, and @Resource) unless an @Produces annotation is present on the CDI bean. This behavior is incorrect since there is no Java EE requirement that the @Produces annotation be present. Since existing applications have dependencies on this incorrect behavior, the specification-incorrect behavior remains the default. This custom property is provided to allow you to obtain the specification-correct behavior by setting the property to false.

Set the property to false to obtain the specification-correct behavior when all of the following are true:
  • Your application contains a CDI bean
  • The CDI bean contains any of the following annotations: @EJB, @WebServiceRef, @PersistenceContext, @PersistenceUnit, @Resource
  • The CDI bean does not contain an @Produces annotation

com.ibm.ws.amm.scan.context.filter.archives

Use this property to provide a list of archives, or utility JAR files, that do not contain annotations. Archives or utility JAR files that are specified for this property are not be scanned for annotations.

When a Java Platform, Enterprise Edition (Java EE) 5 or 6 application is deployed or updated, the Annotations Metadata Manager (AMM) facility scans all of the annotation metadata. This scanning process can negatively affect the amount of time that is required to deploy an application. If the application includes archives or utilities that do not contain annotations, you can list these archives and utilities as the value for this property. If the application includes Java Packages that do not contain annotations, you can list them as the value for the Ignore-Scanning-Packages property.

The values that are specified for these properties are case-sensitive, and must be expressed as a single string with a comma followed by a space that is used to separate the names of the archives or utility JAR files. Wildcards and REGEX expressions are not permitted.

As an alternative to using this custom property, you can add the Ignore-Scanning-Archives property to one of the following files or modules, and specify the archives and utilities that you do not want scanned as the value of that property:
  • The amm.filter.properties file that is located in the was_home/properties directory.
  • The amm.filter.properties file that is located in the profile_home/properties directory
  • The manifest file of an application, META-INF/MANIFEST.MF
  • The manifest of a web or Enterprise JavaBeans (EJB) module within an application

Values specified in the amm.filter.properties files are merged with those found in this custom property to form a server scoped set of filters. This merged set of filters applies to all of the applications that are deployed on that server.

Values specified in the manifest file of an application are merged with the server scoped set of filters to form a module scoped superset that applies to all modules within that application.

Values specified in the manifest file of a web or Enterprise JavaBeans (EJB) module are merged with the module scoped set of filters. This merged set of filters only applies to that module.

Avoid trouble: Exercise caution if you update a manifest file. Manifest files have line length limitations, and other constraints that must be adhered to.
Example:
Ignore-Scanning-Archives : ant.jar,  avalon-framework-4.2.0.jar, axis.jar, CICS.jar, xerces.jar

com.ibm.ws.amm.scan.context.filter.disable.unifyTrue

Use this property only if you need to filter certain JAR files from annotation scanning by the Annotations Metadata Manager (AMM), but you want the files to be scanned by the Extensible Class Scanner (ECS) layer. To enable this property, set the value to true.

The default value is false.

com.ibm.ws.amm.scan.context.filter.packages.

Use this property to provide a list of Java Packages that do not contain annotations. The Java classes specified for this property are not scanned for annotations.

When a Java Platform, Enterprise Edition (Java EE) 5 or 6 application is deployed or updated, the Annotations Metadata Manager (AMM) facility scans all of the annotation metadata. This scanning process can negatively affect the amount of time required to deploy an application. If the application includes Java Packages that do not contain annotations, you can list them as the value for this property. If the application includes archives or utilities that do not contain annotations, you can list them as the value for the Ignore-Scanning-Archives property.

The values that are specified for this property are case-sensitive and must be expressed as a single string with a comma followed by a space that is used to separate the names of the Java Packages. Wildcards and REGEX expressions are not permitted.

As an alternative to using this custom property, you can add the Ignore-Scanning-Packages property to one of the following files or modules, and specify the archives and utilities that you do not want scanned as the value of that property:
  • The amm.filter.properties file that is located in the was_home/properties directory
  • The amm.filter.properties file that is located in the profile_home/properties directory
  • The manifest file of an application, META-INF/MANIFEST.MF
  • The manifest of a web or Enterprise JavaBeans (EJB) module within an application

Values that are specified in the amm.filter.properties files are merged with those found in this custom property to form a server scoped set of filters. This merged set of filters applies to all of the applications that are deployed on that server.

Values that are specified in the manifest file of an application are merged with the server scoped set of filters to form a module scoped superset that applies to all modules within that application.

Values that are specified in the manifest file of a web or Enterprise JavaBeans (EJB) module are merged with the module scoped set of filters. This merged set of filters only applies to that module.

Avoid trouble: The following example is properties file centric and cannot be used as is for a manifest file. Manifest files have a 72-byte line length limit, as well as other constraints that must be adhered to.
Example:
Ignore-Scanning-Packages : org.apache.avalon, org.apache.batik, org.apache.commons

com.ibm.ws.application.enhancedScanning

Use this property to disable several optimizations that decreases the time to deploy and start enterprise applications. The optimizations primarily involve Java Platform, Enterprise Edition (Java EE 5)-enabled applications. When you set this property to false, the following updates are disabled:
  • A new cache for modules files
  • A new cache for module class loading
  • Alternate code paths for annotation processing.
If you set this property to false, you might experience decreases in performance. The default value is true.

com.ibm.ws.cache.CacheConfig.alwaysSetSurrogateControlHdr

Use this property to force the surrogate-control header from the dynamic cache service to always be set on the response. The surrogate-control header contains the metadata that the Edge Side Include (ESI) processing needs to correctly generate, and invalidate the cached content in the ESI cache.

The default value is false, which means that the surrogate-control header might not be set on the response.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.cache.CacheConfig.cascadeCachespecProperties

Use this property to enable child pages or fragments to inherit the cascade of save-attributes, and store-cookies properties from their parent pages or fragments. The default value is false.

The default behavior of the dynamic cache service is to store the request attributes for a child page or fragment, if not explicitly overridden in the cache specification. An application server can run into an Out-Of-Memory condition in scenarios where these request attributes get too large. If the attributes saved by default are not serializable, then the disk offload of these cache entries results in java.io.NotSerializableExceptions.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.cache.CacheConfig.createCacheAtServerStartup

Use this property to create cache instances when the application server is started. Defined cache instances are not created until they are used. Creating cache instances at startup ensures that the cache is immediately available by applications and cache replication, if enabled, is initialized.

The default value is false, which means the cache instance is not created until the application uses the cache instance.

This custom property can be set at the cache instance level.

com.ibm.ws.cache.CacheConfig.filterLRUInvalidation

Use this property to indicate least recently used (LRU) invalidations are not to be propagated to other application servers in the replication domain. Reducing the number of invalidations that are propagated to other application servers in the replication domain helps to prevent overloading the replication infrastructure with unnecessary replication traffic and improves performance.

The default value is false, which means LRU invalidations are propagated to other application servers.

This custom property can be set as an application server JVM custom property that affects all cache instances or as a cache instance custom property that affects only the specific cache instance.

com.ibm.ws.cache.CacheConfig.filteredStatusCodes

Use this property to indicate error situations in which you do not want the dynamic cache service to cache the servlet output.

The value that is specified for this property is a space delimited list of HTTP response error codes. If the status code that is returned from a cache miss matches one of the listed response error codes, the dynamic cache service does not cache the data that was obtained in response to an HTTP request.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.cache.CacheConfig.filterInactivityInvalidation

Use this property to indicate that inactivity invalidations are not to be propagated to other application servers in the replication domain. Reducing the number of invalidations that are propagated to other application servers in the replication domain helps to prevent overloading the replication infrastructure with unnecessary replication traffic and improves performance.

The default value is false, which means inactivity invalidations are propagated to other application servers.

This custom property can be set as an application server JVM custom property that affects all cache instances or as a cache instance custom property that affects only the specific cache instance.

com.ibm.ws.cache.CacheConfig.filterTimeOutInvalidation

Use this property to indicate timeout invalidations that are not to be propagated to other application servers in the replication domain. Reducing the number of invalidations that are propagated to other application servers in the replication domain helps to prevent overloading the replication infrastructure with unnecessary replication traffic and improves performance.

The default value is false, which means timeout invalidations are propagated to other application servers.

This custom property can be set as an application server JVM custom property that affects all cache instances or as a cache instance custom property that affects only the specific cache instance.

com.ibm.ws.cache.CacheConfig.ignoreValueInInvalidationEvent

Use this property to remove the cache value from an invalidation event that is sent to a cache invalidation listener. If the cache invalidation listener does not need the value of the cache entry that was invalidated, then setting this property to true helps improve performance by reducing heap consumption and CPU utilization.

The default value is false, which means the cache value is included in an invalidation event that is sent to a cache invalidation listener.

This custom property can be set as an application server JVM custom property that affects all cache instances or as a cache instance custom property that affects only the specific cache instance.

com.ibm.ws.cache.CacheConfig.use61EntrySetBehavior

Use this property to return a set view of the mappings contained in the map.

When com.ibm.ws.cache.CacheConfig.use61EntrySetBehavior is defined and set to true the DistributedMap.entrySet() method returns a set view of the mappings contained in the map.

This custom property can be set as a JVM custom property at Servers > Application servers > <server name> > Process definitions > Java Virtual Machine > Custom properties.

Defining this JVM custom property affects all cache instances. This property is specified at the application server level.

com.ibm.ws.cache.CacheConfig.useServerClassLoader

Use this property to specify which classloader the JVM should use when deserializing an InvalidationEvent. If you set this property to true, the server classloader is used to deserialize the InvalidationEvent. If you set this property to false, the application classloader is used to deserialize the InvalidationEvent. The default value is false.

Using the appropriate classloader when deserializing an InvalidationEvent helps improve performance.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.CacheConfig.alwaysTriggerCommandInvalidations

Use this property to ensure that command invalidations are triggered regardless of the skipCache attribute.

When a request object contains the <previewRequest> attribute the dynamic cache sets the skipCache attribute to true. When the skipCache attribute is true, commands are not always invalidated. Set the com.ibm.ws.CacheConfig.alwaysTriggerCommandInvalidations custom property to true to ensure that command invalidations are triggered regardless of the skipCache attribute. When you set this custom property, it affects all cache instances. The default value is false.

This custom property is set on the application server level only.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.cdi.immediate.ejb.start

Use this property to ensure that the contexts and dependency injection (CDI) container and its lifecycles start for all EJB modules when the application starts.

When this property is set to a value of true, the CDI container and its lifecycles start for all EJB modules when the application starts. The default value for this property is false.

com.ibm.ws.classloader.allowDisposedClassLoad

Use this property to specify whether the JVM should fully dispose of an application class loader when the application is stopped. If the JVM does not fully dispose of an application class loader, classes can still be loaded from that class loader.

When this property is set to a value of true, the JVM does not fully dispose of an application class loader when the application is stopped.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.classloader.encodeResourceURLs

Use this property to specify whether the application class loaders, such as EAR, web module, and shared library loaders encode spaces in resource URLs. If this property is set to true, spaces are encoded as "%20" in the URLs that either a getResource or getResources call returns.

The default value is true. If this property is set to false, warning message WSVR0333W displays in the logs. This message indicates that the use of the false setting for this property is deprecated.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.classloader.strict

Use this property to enable the WebSphere Application Server application class loader to provide access to the META-INF directory through a getResources call even if the META-INF directory path does not include a trailing slash

The WebSphere Application Server application class loader does not, by default, provide access to the META-INF directory through a getResources call unless a trailing slash is specified at the end of the META-INF directory path. If you want the WebSphere Application Server application class loader to provide access to the META-INF directory through a getResources call even if a trailing slash is not specified at the end of the META-INF directory path, set this property to true.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

Important: Ensure that you use the resources that don't begin with a forward slash (/). The WebSphere Application Server class loader behaves consistently with the Java Underclassman by using this property, which prohibits getResource calls that begin with a forward slash (/).

com.ibm.ws.classloader.zipFileCacheSize

Use this property to specify the maximum number of application JAR files that can be held open for resource and class loading. Reducing the number of times JAR files must be opened, improves the performance of applications that are resource or class loading intensive.

When the specified limit of open JAR files is reached, the class loader starts to close and remove JAR files based on the last time they were accessed. The most recently accessed JAR files are kept open. The value that is specified for this property should be based on the total number of application JAR files that are frequently accessed.

The default value for this property is 8. Specifying a value of 0 disables the cache and prevents application JAR files from being held open.

[Windows]Avoid trouble: Avoid Trouble: Do not use the Microsoft Windows Hot Deployment function if you specify a value other than 0 for this property.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.console.test_connection_monitor

When this property is set to true, the Test connection button is displayed on the data source detail page for any user that has the monitor role. These users can then complete the test connection action for a data source.

This property is set to false by default. Whenever the property is set to false, users that have only the monitor role are not allowed to complete actions on the console and do not have the Test connection button available to them.

Users that have the administrator or configurator role can complete the test connection action for a data source, whether this property is set to true or false.

CAUTION:
The monitor role isn't normally allowed to complete actions.

com.ibm.ws.cscope.HighlyAvailableIORsEnabled

This property allows the administrator to configure the compensation service to generate highly available IORs for distributed business activity CORBA objects, which enable distributed subordinate business activities that have failed to be completed during peer recovery. This property also permits new business activities when the nodeagent is not running.

The default value for this property is false. Specifying a value of true enables this property. This property should be set on each application server in the cluster.

com.ibm.ws.eba.bla.MapRolesToUsersStep.SkipValidation

Use this property to disable validation of users and groups when mapping roles to users for OSGi (Open Services Gateway initiative) applications. Indicate whether the MapRolesToUsersStep option validates specified users or groups against the user registry.

The default value is false. Specify true to disable the validation. When using this custom property, specify the custom property as an application server JVM custom property.

com.ibm.ws.ecs.force.context.classloader

Use this property to avoid or activate steps to ensure that shared libraries are available for servlet container initializer testing.

The default values are unset or false. Possible values are unset, false, or true. Set the value to unset or false to avoid the steps to ensure that shared libraries are available for servlet container initializer testing. Set the value to true to take the steps to ensure that servlet container initializer testing includes shared libraries in the class path that is used for the tests.

com.ibm.ws.el.reuseEvaluationContext

Use this property to indicate that the same EvaluationContext object can be reused on a per thread basis.

Typically, during the evaluation of expressions the Unified EL code creates a new org.apache.el.lang.EvaluationContext object for each call that is made. Because these objects are subsequently made available for garbage collection, as the number of objects created increases, memory consumption and garbage collection also increases. Setting the com.ibm.ws.el.reuseEvaluationContext property to true enables the same EvaluationContext object to be reused on a per thread basis, thereby decreasing memory consumption and the amount of garbage collection that needs to occur.

The default value is false.

com.ibm.ws.http.ConnectionIOTimeout

Use this property to extend the timeout of the SOAP port between the time a connection is established and the time transmission of data from the client begins. The default value is 5 seconds (15 seconds on Liberty). This might need to be increased if a SOAP server or client JVM is busy, or an SSL handshake is taking an extended period of time. An HTTP 408 message might be received from the SOAP server if this timeout occurs.

[z/OS]

com.ibm.ws.iiop.channel.disableOnewayLocateRequiredMessage

Use this property to control whether the CWZGB0005I message displays whenever a oneway GIOP request against an object requires further locate-forward addressing. If the property is set to false, the CWZGB0005I message is displayed. If the property is set to true, the CWZGB0005I message is not displayed.

The default value is false.

com.ibm.ws.jbatch.disable

Use this property to disable the IBM built-in Batch Applications for Java Platform 1.0 (JSR 352) implementation in a server. To disable the JSR 352 implementation, set the property to true. The property defaults to false, which means that by default the IBM implementation is enabled.

com.ibm.ws.jsf.allow.interpolator.per.app

The JSF container has been updated to allow a MessageInterpolator to be defined and used for each application, and it is not shared across applications. This property must be set to true for the new behavior to be enabled:

com.ibm.ws.jsf.call.publishevent.with.sourceclass

Use this property to ensure that the proper source class is used when calling javax.faces.Application.publishEvent. By default, when calling javax.faces.Application.publishEvent, the UIComponent.class is always used rather than the actual source class. However, the sourceBaseType parameter should indicate the source event that must be used to lookup the listener to which this event must be published. If this argument is null the return from source.getClass() must be used as the sourceBaseType.  

The default value is false.

com.ibm.ws.jsp.ENHANCE_EL_SUPPORT

Use this property to control how an expression is handled. During the evaluation of an expression, the value is coerced to the expected type based on Section 1.8.2 of the Expression Language Specification Version 2.1. This coercion can result in unexpected results as the expression value might not be the expected type. Set this property to true to prevent this coercion.

The default value is true.

[9.0.5.11 or later]

com.ibm.ws.logging.iso.date.format

Use this custom property to specify whether the date and time format in the logs uses a locale-specific format or the ISO-8601 format. Valid values are true or false. The default value is false.

If you specify a value of true, the ISO-8601 format is used in the SystemOut.log and SystemErr.log files, the trace.log file, the FFDC logs, and HPEL Text Log output. The format is yyyy-MM-dd'T'HH:mm:ss.SSSZ.

If you specify a value of false, the date and time are formatted according to the default locale that is set in the system. If the default locale is not found, the format is dd/MMM/yyyy HH:mm:ss:SSS z.

com.ibm.ws.management.application.task.AppTypeDeploymentTask.isLongRunningApp

This property is listed for informational purposes only. This property is created automatically and is used for auto-configuration and should not be changed.

The default value is true.

com.ibm.ws.management.connector.soap.logClientInfo

Use this property to indicate whether you want to log the host, port, and username of SOAP client requests. When this property is set to true, SOAP client details are logged in SystemOut.log. These details are also added to trace.log if the trace level for the SOAP connector is set to all.

The default value is false.

[Windows]

com.ibm.ws.management.connector.soap.waitBeforeCloseTime

Use this property to change the length of time specified for the server SOAP connection timeout. When using the localhost adapter on a Microsoft Windows operating system, the server SOAP connection timeout, which defaults to 10 milliseconds, allows large amounts of data to be streamed without interruption.

If too short a length of time is specified for this property, a SOAPException for premature end of stream might occur on the server side of the connection when a large amount of data is streamed.

Specifying a value of 0 disables the timeout.

com.ibm.ws.management.event.max_polling_interval

Use this property to specify the maximum amount of time the server waits before it asks or gets notifications from the client. The default polling interval is 1000 milliseconds (1 second). If a property value is not specified, the default value is used.

If you are using a SOAP or IPC connector, you can use this property to tune that connector such that the amount of time the server waits for a poll notification from the client matches the time interval the server would wait if you were using an RMI connector.

If this property value is set to -1, the client polls for notifications based on a built-in adaptive algorithm that changes the polling interval based on the number of notifications that the client receives. A time interval of 3 to 20 seconds can elapse between polls before the first notification is received.

For transitioning users: Prior to Version 8.0, if a value was not specified for the com.ibm.ws.management.event.max_polling_interval property, client polls for notification were based on the built-in adaptive algorithm that changes the polling interval based on the number of notifications that the client receives.

This property must be specified for the client-side JVM.

com.ibm.ws.management.event.pull_notification_timeout

Use this property to specify the amount of time the client waits before polling notification from the server. The default timeout is 60000 milliseconds (60 seconds or 1 minute). If a property value is not specified, the default value is used.

If the property value is set to 0 (zero) or to a negative number such as -1, the server returns to the client immediately even if no notification is available.

For transitioning users: Prior to version 8.0, if a value was not specified for the com.ibm.ws.management.event.pull_notification_timeout property, the server returned to the client immediately even if no notification was available.

This property must be specified for the server-side JVM.

com.ibm.ws.management.repository.tempFileKeepTimeMinutes

Use this property to specify, in minutes, how long a file is kept in the configuration repository temporary directory before the configuration repository temporary directory cleanup task can delete that file from the directory. The default value for this property is 1440 minutes, which is equal to 24 hours. In previous versions of the product, a file was kept for 60 minutes.

The default value is typically sufficient for performing needed cleanup without deleting files that are in use. However, there might be situations where you need to specify a larger, or smaller value. You can specify a minimum value of 60 minutes for this property. However, it is recommended that you specify a value that is equivalent to several hours to account for situations where very large files are being transferred or synchronized, or where a network is slow, and file transfer operations are taking a long time. In these situations, if too short a time period is specified, it is possible for a file to be deleted while it is still being transferred.

If the com.ibm.ws.management.repository.tempFileSweepIntervalMinutes property is set to 0, the cleanup function is disabled, and any files that remain after a server process failure, remain in the configuration repository temporary directory until they are manually removed, or the cleanup function is enabled.

Avoid trouble: If an invalid value is specified for this property, the default value is used.

com.ibm.ws.management.repository.tempFileSweepIntervalMinutes

Use this property to specify, in minutes, how frequently the configuration repository temporary directory cleanup task runs. This task removes files from the configuration repository temporary directory that were not properly removed because of a server process failure.

The cleanup task always runs when the server starts, and then again after the time length that is specified for this property expires. The default value for this property is 720 minutes, which is equivalent to 12 hours. This length of time is typically sufficient for the configuration repository temporary directory cleanup task to successfully complete the cleanup process. You can disable this cleanup function by setting this property to 0.

In previous versions of the product, the cleanup task ran when the server started, and then ran again every 30 minutes.

Avoid trouble: If an invalid value is specified for this property, the default value is used.

com.ibm.ws.management.suppressPortScan

Set this property to a value of true to suppress port activity checking by the deployment manager when new servers are created. When set to true, the deployment manager does not attempt to bind or connect to a new port before using the port in a server configuration. Suppression of port activity checking can lead to port conflicts if other applications have active ports. The default value is false.

com.ibm.ws.management.taskcommandtimeoutsec

Set this property to a value in seconds if a SessionTimeoutException from TaskCommandSessionMgr occurs when performing a long running application update. The default value is 1200 seconds (20 minutes).

com.ibm.ws.odr.plugincfg.config.ASDisableNagle

Use this property to specify whether you want to disable the Nagle algorithm for the connection between the plug-in and the proxy server.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false, which means that the Nagle algorithm is enabled for the connection between the plug-in and the proxy server.

com.ibm.ws.odr.plugincfg.config.AcceptAllContent

Use this property to specify whether you can include content in POST, PUT, GET, and HEAD requests when a Content-Length or Transfer-encoding header is contained in the request header. You can specify one of the following values for this attribute:
  • True if content is to be expected and read for all requests.
  • False if content is only to be expected and read for POST and PUT requests.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.config.AppServerPortPreference

Use this property to specify which port number is used to build URIs for a sendRedirect.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is HostHeader.

com.ibm.ws.odr.plugincfg.config.ChunkedResponse

Use this property to specify whether the plug-in groups the response to the client when a Transfer-Encoding : Chunked response header is present in the response.

You can specify one of the following values for this attribute:
  • True if the plug-in is to chunk the response to the client when a Transfer-Encoding : Chunked response header is present in the response.
  • False if the response is not to be chunked.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.config.IISDisableNagle

Use this property to specify whether you want to disable the nagle algorithm.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.config.IISPluginPriority

Use this property to specify the priority in which the web server loads the plug-in. You can specify one of the following values for this attribute:
  • High
  • Medium
  • Low

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is High.

com.ibm.ws.odr.plugincfg.config.IgnoreDNSFailures

Use this property to specify whether the plug-in is to ignore DNS failures within a configuration when started.

When this property is set to true, the plug-in ignores DNS failures within a configuration and starts successfully if at least one server in each ServerCluster resolves the host name. Any server for which the host name is not resolved is marked unavailable for the life of the configuration. The host name is not resolved later during the routing of requests. If a DNS failure occurs, a log message is written to the plug-in log file and the plug-in continues initializing instead of the web server not starting.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.config.RefreshInterval

Use this property to specify, in seconds, how frequently the plug-in should check the configuration file for updates or changes. The plug-in checks the file for any modifications that occur since the plug-in configuration was loaded.

In a development environment where frequent changes occur, set the time interval to less than 60 seconds.

In a production environment, you should set a higher value than the default value because updates to the configuration do not occur as frequently.

If the plug-in reload is not successful, the plug-in log file contains an error message, and the previous configuration is used until the plug-in configuration file successfully reloads. Refer to the plug-in log file for more information if an error occurs.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is 60.

com.ibm.ws.odr.plugincfg.config.ResponseChunkSize

Use this property to specify, in kilobytes, the maximum chunk size the plug-in should use when reading the response body. For example, Config ResponseChunkSize="N", where N equals the chunk size.

By default, the plug-in reads the response body in 64k chunks until all of the response data is read. This process might cause a performance problem for requests where the response body contains large amounts of data. If the content length of the response body is unknown, a buffer size of N kilobytes is allocated and the body is read in N kilobyte size chunks until the entire body is read. If the content length is known, then a buffer size of either content length or N is used to read the response body.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is 64.

com.ibm.ws.odr.plugincfg.config.VHostMatchingCompat

Use this property to specify whether the plug-in should use the port number for virtual host matching. The following values can be specified:
  • True for physically matching by using the port number for which the request is received.
  • False for logically matching by using the port number contained in the host header.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.config.TrustedProxyEnable

Use this property to specify whether the plug-in is to allow the inclusion of trusted proxies. The following values can be specified:
  • True if you want to allow the inclusion of trusted proxies.
  • False if you do not want to allow the inclusion of trusted proxies.

The trusted proxies are collected from the defined trusted security proxies.

This property is only valid for a proxy server, and applies to the Config element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.log.Name

Use this property to specify the fully qualified path to the log file to which the plug-in writes error messages.

This property is only valid for a proxy server, and applies to the Log element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is profileRoot/logs/http_plugin.log.

com.ibm.ws.odr.plugincfg.log.LogLevel

Use this property to specify the level of detail of the log messages that the plug-in writes to the log. You can specify one of the following values for this attribute:
  • Trace. All of the steps in the request process are logged in detail.
  • Stats. The server selected for each request and other load balancing information relating to request handling is logged.
  • Warn. All warning and error messages resulting from abnormal request processing are logged.
  • Error. Only error messages resulting from abnormal request processing are logged.
  • Debug. All of the critical steps that are performed in processing requests are logged.
  • Detail. All of the information about requests and responses are logged.

This property is only valid for a proxy server, and applies to the Log element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is Error.

Avoid trouble: A lot of messages are logged at the trace level, which can cause the file system to fill up very quickly. Never use a trace setting in a normally functioning environment as it adversely affects performance.

com.ibm.ws.odr.plugincfg.cluster.CloneSeparatorChange

Use this property to indicate to the plug-in that the plus character (+) can be used as the clone separator.

Some pervasive devices cannot handle the colon character (:) that is used to separate clone IDs with session affinity.

Avoid trouble: If you use this custom property, you must change the proxy server configurations such that the proxy server separates clone IDs with the plus character instead the colon character.

This property is only valid for a proxy server, and applies to the ServerCluster element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.cluster.LoadBalance

Use this property to specify the appropriate load balancing option: Round Robin or Random.

The round-robin implementation has a random starting point. The first proxy server is picked randomly. Round Robin is then used to pick proxy servers from that point forward. This implementation ensures that in multiple process-based web servers, all of the processes don't start by sending the first request to the same proxy server.

The Random implementation also has a random starting point. However, with this implementation all subsequent proxy servers are also randomly selected. Therefore, the same proxy server might get selected repeatedly while other proxy servers remain idle.

The default value is Round Robin.

com.ibm.ws.odr.plugincfg.cluster.PostSizeLimit

Use this property to specify, in bytes, the maximum number of bytes of request content that the plug-in is allowed to attempt to send to a server. If a request is received that is greater than the specified value, the plug-in ends the request

This property is only valid for a proxy server, and applies to the ServerCluster element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is -1, which indicates that there is no limit to the size of a request.

com.ibm.ws.odr.plugincfg.cluster.RemoveSpecialHeaders

Use this property to whether the plug-in is to add special headers to a request before it is forwarded to the server. These headers store information about the request that the application then uses. By default, the plug-in removes these headers from incoming requests before adding the required headers.

If you set this property to false, you introduce a potential security exposure header from incoming requests are not removed.

This property is only valid for a proxy server, and applies to the ServerCluster element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is true.

com.ibm.ws.odr.plugincfg.cluster.RetryInterval

Use this property to specify, in seconds, the amount of time that elapses between when a proxy server is marked down and when the plug-in reattempts to make a connection.

This property is only valid for a proxy server, and applies to the ServerCluster element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is 60.

com.ibm.ws.odr.plugincfg.odrIncludeStopped

Use this property to specify whether the plug-in is to allow the inclusion of stopped proxy servers. The following values can be specified:
  • True if you want to allow the inclusion of stopped proxy servers.
  • False if you do not want to allow the inclusion of stopped proxy servers.

This property is only valid for a proxy server.

The default value is false.

com.ibm.ws.odr.plugincfg.server.ConnectTimeout

Use this property to specify, in seconds, the amount of time the plug-in waits for a successful connection

Specifying a value for the property enables the plug-in to perform non-blocking connections with the proxy server. Such connections are beneficial when the plug-in is unable to contact the destination to determine if the port is available or unavailable.

When a value greater than 0 is specified, and a connection does not occur after that time interval elapses, the plug-in marks the proxy server unavailable, and proceeds with one of the other proxy servers defined in the cluster.

If no value is specified for this property, the plug-in performs a blocking connect in which the plug-in waits until an operating system times out and allows the plug-in to mark the proxy server unavailable.

This property is only valid for a proxy server, and applies to the Server element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is 0.

com.ibm.ws.odr.plugincfg.server.ExtendedHandShake

Use this property to indicate to the plug-in that it must ensure the availability of a proxy server before sending a request to that proxy server.

Typically, the plug-in marks a proxy server as stopped when a connect() ends. However, when a proxy firewall is between the plug-in and the proxy server, the connect() succeeds, even though the back-end proxy server is stopped. This situation causes the plug-in to not failover correctly to other proxy servers.

This property is only valid for a proxy server, and applies to the Server element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.server.MaxConnections

Use this property to specify the maximum number of pending connections to a proxy server that can flow through a Web server process at any point in time.

This property is only valid for a proxy server, and applies to the Server element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is -1, which indicates that there is no maximum number for the number of pending connections to a proxy server that can flow through a Web server process at any point in time.

com.ibm.ws.odr.plugincfg.cluster.WaitForContinue

Use this property to specify whether to use the HTTP 1.1 100 Continue support before sending the request content to the proxy server.

Typically, the plug-in does not wait for the 100 Continue response from the proxy server before sending the request content. You should use HTTP 1.1 100 Continue support when configuring the plug-in to work with certain types of proxy firewalls.

This property is ignored for POST requests to prevent a failure from occurring if the proxy server closes a connection because of a time-out.

This property is only valid for a proxy server, and applies to the Server element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.property.ESIEnable

Use this property to enable or disable the Edge Side Include (ESI) processor. If the ESI processor is disabled, the other ESI elements in the file are ignored.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is true.

com.ibm.ws.odr.plugincfg.property.ESIMaxCacheSize

Use this property to specify, in 1 KB units, the maximum size of the cache. The default maximum size of the cache is 1024 KB (1 megabyte). If the cache is full, the first entry to be evicted from the cache is the entry that is closest to its expiration time.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is 1024.

com.ibm.ws.odr.plugincfg.property.ESIInvalidationMonitor

Use this property to specify whether the ESI processor receives invalidations from the proxy server.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is false.

com.ibm.ws.odr.plugincfg.property.https.keyring

Use this property to specify the directory location of the SAF keyring when the protocol of the transport is set to HTTPS.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is profileRoot/etc/plugin-key.kdb.

com.ibm.ws.odr.plugincfg.property.https.stashfile

Use this property to specify the location of the stashfile.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is profileRoot/node/etc/plugin-key.sth .

com.ibm.ws.odr.plugincfg.property.PluginInstallRoot

Use this property to specify the installation path for the plug-in.

You must set this property, to the fully qualified path of the plug-in installation root. If you use the default value, the property does not display in the plugin-cfg.xml file.

This property is only valid for a proxy server, and applies to the Property element in the plugin-cfg.xml file that the proxy server automatically generates.

The default value is "".

com.ibm.ws.pm.checkingDBconnection

Use this property to specify whether the persistence manager is to continue checking the availability of a database that was previously marked as unavailable until a connection with that database is successfully established.

If a database service is down when the persistent manager attempts to establish a connection to that database, the database is marked as unavailable. Typically, the persistent manager does not re-attempt to establish a connection after a database is marked as unavailable. If you sent this property to true, the persistence manager continues to check the availability of the database until it is able to successfully establish a connection to that database.

The default value is false.

[9.0.5.15 or later]

com.ibm.ws.pmi.maxUniquePmiMetricCount

When Performance Monitoring Infrastructure (PMI) URL statistic counters are enabled for unbounded URLs, you might encounter an issue with high CPU use. The com.ibm.ws.pmi.maxUniquePmiMetricCount custom property defines the maximum number of individual URL metrics that are tracked before a warning message is issued that recommends disabling specific URL counters. The following example shows the warning message.

CWPMI0109W: Over {0} stats are being tracked for {1}, PMI module {2} id {3}. 
By tracking a high number of PMI metrics, performance issues can occur. 
Disable {1}, PMI module {2} ID {3} in the administrative console.

This property takes an integer value. The default value is 500.

com.ibm.ws.policyset.exportEncodedPasswords

Set the property to true to enable WS-Security policyset bindings that include encrypted passwords to be exported using XOR encoded passwords instead.

Valid values are true and false.

The default value is false.

com.ibm.ws.readSystemLocale

Set this property to true if the code needs to process JAX-WS SOAP messages by using an encoding other than the one specified in the message, or, if no encoding is specified, the code needs to process the messages by using Unicode Transformation Format, 8-bit encoding form (UTF-8). If this property is set to true, the encoding that is used is the one specified by the file.encoding JVM property. The default value is false.

com.ibm.ws.recoverylog.disableNonHARegistration

When the application server is not a member of a cluster that has failover of transaction log recovery that is enabled, it is not necessary for the recovery log service to register with the HA Manager.

However, if failover is later enabled, and only a partial restart of the cluster occurs, set this custom property to true so that the recovery log service does not register with the HA Manager.

Valid values are true and false.

The default value is false.

com.ibm.ws.recoverylog.spi.NoMemoryMappedFiles

Use this property to provide a performance improvement for the memory mapping of the transaction log files if the logs are local to the application server.

However, if the transaction logs are defined on a remote file system, which is typical when you enable High Availability (HA) support, any performance gains are negligible. Additionally, the log processing is more complex. Because of this complexity, in an HA environment memory, disable the mapping of the transaction logs.

To disable the memory mapped files, set the JVM custom property of com.ibm.ws.recoverylog.spi.NoMemoryMappedFiles to true on any server that accesses recovery log files. The default value is false.
Remember: By default, memory mapping of the transaction logs is disabled on the z/OS operating system, and on the Windows operating system within an HA environment.

com.ibm.ws.runtime.component.ResourceMgr.postBindNotify

Use this property to make the Connection Factory MBeans available when a resource adapter starts. Typically, when a resource adapter starts, the Connection Factory MBeans are not available for the resource adapter to query. However, certain resource adapters, such as the IMS DB Resource Adapter, require this function for initialization.

If you are not using a resource adapter that requires the availability of Connection Factory MBeans at initialization, add this property to your JVM settings and set the value to false.

The default value is true.

com.ibm.ws.runtime.dumpShutdown

There are differing situations where a thread dump during server shutdown is useful. The following are examples
  • Server shutdown because nodeagent stopped the hung server.
  • Server shutdown when System.exit() is called from application code running in the server.
  • Sporadic server shutdown.
The com.ibm.ws.runtime.dumpShutdown diagnostic custom property allows you to trigger a Java core thread dump during server shutdown. Set this property to true if you want to trigger a Java core thread dump during server shutdown. The default value is false.

[Linux][AIX][Windows][z/OS]For platforms where an IBM Software Development Kit is used (AIX, Windows, Linux, z/OS), the Java core thread dump is generated in the working directory of the application server.

[HP-UX][Solaris]For other platforms (Solaris, HP-UX), the Java core thread dump is written into the native_stdout.log file for the application server.

In addition to the Java core thread dump, the stack trace of the current thread that is processing the shutdown is printed in the SystemErr.log for the application server.

[AIX Solaris HP-UX Linux Windows][IBM i]

com.ibm.ws.runtime.logThreadPoolGrowth

Thread pools that are allowed to grow are configured with a maximum size but allowed to increase in size beyond that maximum. However, by default, no messages are issued that indicate that the maximum size has been exceeded.

Set this property to true if you want the server to send a message to the log file when a thread pool that is allowed to grow increases beyond its configured maximum size.

com.ibm.ws.runtime.suppressClasspathWarnings

When enabled, this property suppresses the WSVR0322W warning message that is displayed when JVM class path entries are added to the server. The warning alerts users that their configuration puts them at risk for class loading problems. The suppression of the warning message allows users who understand and accept those risks to remove the warning message rather than ignore its presence. Neither property value has any functional effect on the server. The message (and lack of message) is purely informational.

The default value is false.

com.ibm.ws.scripting.apptimeout

Use this property to specify, in seconds, the length of time that can elapse before an application installation, or an application update times out. The default value is 86400, which is equivalent to 24 hours.

Specifying a reasonable value for this property prevents the installation, or update process from continuing indefinitely when a situation occurs that prevents the installation, or update script from completing. For example, you might have a JACL script that updates an EAR file that cannot complete because the deployment manager that the script is connected to stops.

com.ibm.ws.sib.dumpWSRMMessageContext

Set this property to true to make a service integration bus (SIB) dump include deserialized application messages that are stored in persistent WS-RM sequences.

The default of this property is false.

com.ibm.ws.sib.webservices.useSOAPJMSTextMessages

By default on WebSphere Application Server Version 6 or later, a SOAP over JMS web service message that is sent by the Web Services Gateway is sent as a JmsBytesMessage.

Set this property to true to modify the default behavior and send a compatible JmsTextMessage. Setting this property modifies the default behavior for all outbound JMS web services invocations sent from the service integration bus.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.soap.handleRST

Use this property if you want your web server to recognize when a SOAP message is read, and treat the RequestSecurityToken (RST) element as a FIN message type.

In some instances, when a connection reset occurs, a web server starts with security disabled. However, because a RST was received instead of the normal FIN/end of file, an error message appears in the administrative console indicating the web server failed to start, even though the web server did start and is operational. A refresh of the web server console page displays the correct operational status.

If you set the com.ibm.ws.soap.handleRST custom property to true, your web server will recognize when the complete SOAP message has been read, and treat the RST as a FIN, and you will not receive an error message when an RST is received.

com.ibm.ws.use602RequiredAttrCompatibility

Use the com.ibm.ws.use602RequiredAttrCompatibility custom property to specify whether the <required> attribute is evaluated prior to other attributes in the cachespec.xml file.

In Version 6.0.2, if you set the <required> attribute to false, then all of the other attributes within the cachespec.xml file are ignored and a cache ID is generated.

For transitioning users: In versions later than 6.0.2, by default, the <required> attribute is evaluated along with all of the other attributes to determine if a cache ID is generated.
Avoid trouble: If you set the com.ibm.ws.use602RequiredAttrCompatibility custom property to true, then the behavior of the cachespec.xml file is reverted back to the behavior in Version 6.0.2. The <required> attribute is evaluated prior to other attributes in the cachespec.xml file. The default value is false.. When you set this JVM custom property, which only applies to the application server level, it affects all of the dynamic cache users.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

com.ibm.ws.webcontainer.allowDefaultErrorPage

Use this property if your web.xml file contains an error page definition that adheres to the Servlet 3.0 Specification. The Servlet 3.0 specification indicates that only the <location> parameter is mandatory. The <error-code> and <exception-type> parameters are optional. However, if you do not add this property to your JVM settings and set it to true, an error page defined with just the <location> parameter is ignored.

The default value is false.

If you use this property, it must be set at the application server level.

[9.0.5.3 or later]

com.ibm.ws.webcontainer.servlet30compatibility

Use this property to deploy an application that has multiple servlets that are mapped to the same URL. Such an application fails to deploy in version 9.0 because of clarifications in the servlet 3.1 specification. This custom property is provided to allow for compatibility with earlier versions. An alternative solution is to fix the servlet mapping in the application, since a URL can serve only one servlet.

The default value is false.

Set the value to true to deploy an application that has multiple servlets that are mapped to the same URL.

Important: This JVM custom property enables deployment of an application with multiple servlets that are mapped to the same URL. To start the application, use the corresponding web container custom property. For more information, see com.ibm.ws.webcontainer.servlet30compatibility.

com.ibm.ws.webservices.allowNoSOAPActionHeader

Use this property to enable the web services engine to tolerate an incoming web service request that does not contain a SOAPAction header. This property must be set at the application server level.

The SOAP specification states that an HTTP request message must contain a SOAPAction HTTP header field with a quoted empty string value, if in the corresponding WSDL description, the soapAction of soapbind:operation is either not present, or present with an empty string as its value. However, if you want the web services engine to handle requests that do not contain a SOAPACTION header, add this property to the application server settings and set it to true.

When this property is not specified, or is not set to true, if an incoming SOAP request message does not contain a SOAPAction header, a SOAP Fault is returned to the client

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.allowStatusCode202OneWay

Use this property to allow a JAX-RPC one-way service to send a 202 status code instead of a 200 status code.

A JAX-RPC one-way service deployed on WebSphere Application Server normally returns a 200 HTTP status code. Some JAX-RPC implementations cannot tolerate a 200 status code, preferring a 202 instead. According to the Basic Profile Version 1.1, both 200 and 202 are valid status codes for one-way services.

If the property is set to true, then the JAX-RPC one-way service returns a 202 status code.

The default value is false.

This property only applies to the application server JVM.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.appendRootCauseToWSF

If you are a JAX-RPC user, use this property to specify whether you want the Fault details for an exception that are returned in a response to contain information about the original exception.

Typically, the Fault details for an exception, that are returned in a response, only contains information about the most recent exception. It does not contain information about the original exception, which usually is not the most current exception. Frequently, an exception triggers other exceptions before the Fault details are returned in a response. This discrepancy can make problem determination more difficult for the end user if that person does not have access to the logs from the service provider.

If the end user needs to be able to see the exception details for all of the exceptions associated with a problem, this custom property should be set to true for the JVM on the service provider's application server. When this custom property is set to true on the service provider's application server, the application server loops though all the exception causes, and concatenates the details of each exception into the Fault details that are returned in the response.

The default value is false.

If you decide to use this custom property, you must specify it as a JVM custom property for an application server.

[z/OS]

com.ibm.ws.webservices.cacheEngineList

In WebSphere Application Server for z/OS configurations using JAX-RPC web services, use this property to disable client web services engine caching.

If an application is restarted several times, the client engine cache might fill local system storage, causing an out-of-memory error. When this property is set to true, engine caching is enabled. Set this property to false to disable engine caching when this out-of-memory error occurs.

The default value is true.

com.ibm.ws.webservices.contentTransferEncoding

Use this property to specify a range of bits for which .XML-encoding is disabled. Typically any integer that is greater than 127 is XML-encoded. When you specify this property:
  • Web services disable encoding for integers that fall within the specified range.
  • The HTTP transport message contains a ContentTransferEncoding header that is set to the value that is specified for this custom property.

Specify 7bit, if you only want integers greater than 127 encoded. Specify 8bit, if you only want integers greater than 255 encoded. Specify binary, if you want encoding disabled for all integers.

The default value is 7bit.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.disableSOAPElementLazyParse

Use this property to disable lazy parsing of SOAPElements. Lazy parsing is designed for situations where the client is not parsing the SOAPElement. If a client is parsing the SOAPElement with SAAJ, it is better to not delay parsing by the web services component.

You can set this property as a JVM custom property at either the server or client level. When this property is set at either the server or client level, the setting applies to all applications on the JVM. The default value is false.

You can also use an application assembly tool to specify this property as a new web service description binding entry for the port component binding, if you want to disable lazy parsing of SOAPElements on an application-by-application basis for a particular server, instead of for all of the servers that are managed by the deployment manager.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.engine.transport.jms.propagateOneWaySystemExceptions

Use this property to enable exceptions that occur during the processing of a one-way JMS Web service to be propagated back to the EJB container. This propagation makes normal error recovery possible.

If this property is set to false, an exception is wrapped in a WebServicesFault message and sent back to the client. Because the web service is not aware of the exception, no recovery is attempted.

The default value is false.

Avoid trouble: This property does not apply to a one-way HTTP Web service, or to two-way JMS requests.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.forceLegacyDispatchFromSOAPConnection

Use this property to specify that the JAX-RPC engine is to be used to process outgoing requests for SOAP with Attachments API for Java (SAAJ) clients, instead of the JAX-WS engine.

This property does not apply to web services clients that use the JAX-RPC or JAX-WS APIs to invoke web services. When the JAX-WS engine is used to process client requests, the outcome might be different than when the JAX-RPC engine is used. For example, some SAAJ clients set the SOAPAction header as a MIME header, using the SAAJ APIs. When the JAX-RPC engine is used to process such a request, this SOAPAction header with its user-set value is sent in the request. However, if the JAX-WS engine is used to process the same request, an empty SOAPAction header is sent in the request. If you are used to having the JAX-RPC engine process SAAJ client requests and want to preserve this behavior, add this property to your JVM settings and set it to true.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.HttpRedirectWithProxy

Set this property to true to allow HTTP redirect requests to be sent through the proxy server. When you set this property to true, you change the default behavior for all outbound HTTP redirect requests sent from the JAX-RPC runtime. When this property is set to false, a redirect request is sent to a remote server directly even though a proxy server is configured.

The default value is false.

If you decide to use this custom property, you must specify it as a proxy server JVM custom property.

com.ibm.ws.webservices.ignoreUnknownElements

Use this property to control whether clients can ignore extra XML elements that are sometimes found within literal SOAP operation responses.

Setting this property to true provides you with the flexibility of being able to update your server code to include more response information, without having to immediately update your client code to process this additional information. However, when this function is enabled, the checking of SOAP message against the expected message structure is more relaxed than when this property is set to false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.jaxrpc.parse.tolerate.invalid.namespace

Use this property to enable the JAX-RPC engine to use a more tolerant algorithm when determining whether to accept an incoming JAX-RPC message.

Typically, if an incoming JAX-RPC message uses an invalid namespace for a body element, the JAX-RPC engine rejects the message. If you set this property to true, the JAX-RPC engine uses a more tolerant algorithm that ignores the namespace mismatch.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.resolveXMLSchemaDTD

Use this custom property to enable a JAX-RPC application to properly start even if the schema or WSDL file that is represented in the _AbsoluteImportResolver class also references the http://www.w3.org/2001/XMLSchema.dtd DTD.

When you run on a host that is not connected to the Internet, a JAX-RPC application that is packaged with the _AbsoluteImportResolver class might not start properly. The following error might exist in the log files:
WSDDPort      W com.ibm.ws.webservices.engine.deployment.wsdd.WSDDPort expand 
WSWS3114E: Error: Internal error.
java.net.UnknownHostException: www.w3.org

Setting this custom property to true enables a JAX-RPC application to properly start even if the schema or WSDL file that is represented in the _AbsoluteImportResolver class also references the https://www.w3.org/2001/XMLSchema.dtd DTD.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.searchForAppServer

Use this property to control whether DualMetaDataLoaderImpl E loadWebContainerPorts could not find any http or https ports messages are sent to the system log.

Depending on your system configuration, if a web services application is installed across both a web server and an application server, your system might issue this message, indicating that an error occurred even though this is a valid configuration. Therefore, if you install any of your web services applications across both a web server and an application server, you might not want these messages sent to the system log.

If the com.ibm.ws.webservices.searchForAppServer property is set to true, any DualMetaDataLoaderImpl E loadWebContainerPorts could not find any http or https ports messages that are issued are not sent to the system log. If this property is not specified or is set to false, these messages are sent to the system log.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.serialize.2DimArray.asArrays

Use this property to cause the JAX-RPC runtime to serialize two-dimensional XML arrays as a series of arrays.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

The default value is false.

The following message snippet illustrates a series of elements, which is a valid format for representing two-dimensional XML arrays when this property is set to false.

<p565:sayHelloResponse xmlns:p565="http://ibm.com">
    <sayHelloReturn xsi:type="soapenc:Array" 
soapenc:arrayType="xsd:string[2,3]">
      <item xsi:type="xsd:string">array1 element1</item>
      <item xsi:type="xsd:string">array1 element2</item>
      <item xsi:type="xsd:string">array1 element3</item>
      <item xsi:type="xsd:string">array2 element1</item>
      <item xsi:type="xsd:string">array2 element2</item>
      <item xsi:type="xsd:string">array2 element3</item>
    </sayHelloReturn>
  </p565:sayHelloResponse>

The following message snippet illustrates an array of two arrays, with each array containing three elements, which is a valid format for representing two-dimensional XML arrays when this property is set to true.

<p565:sayHelloResponse xmlns:p565="http://ibm.com">
    <sayHelloReturn xsi:type="soapenc:Array" 
soapenc:arrayType="xsd:string[][2]">
      <item soapenc:arrayType="xsd:string[3]">
         <item>array1 element1</item>
         <item>array1 element2</item>
         <item>array1 element3</item>
      </item>
      <item soapenc:arrayType="xsd:string[3]">
         <item>array2 element1</item>
         <item>array2 element2</item>
         <item>array2 element3</item>
      </item>
    </sayHelloReturn>
  </p565:sayHelloResponse>

com.ibm.ws.webservices.serializeDetailElementUsingDefaultNamespace

Use this property to specify whether the application server uses an actual prefix name to locate the namespace that defines the Fault detail, or uses a default namespace to define the Fault detail.

When a JAX-RPC Web service responds with a SOAP Fault, an actual prefix name is typically used to locate the namespace that defines the contents of the Fault detail. Following is an example of the message that the application server typically issues in this situation:

<soapenv:Fault                                      
      xmlns:soapenv=
      "http://schemas.xmlsoap.org/soap/envelope/">      
  <faultcode xmlns="http://sample">       
     sampleFault                          
  </faultcode>                                              
  <faultstring>sample text</faultstring>                      
  <detail encodingStyle="">                                
    <sampleFault                        
      xmlns="http://sample"> 
      ...
    </sampleFault>
  </detail>
<soapenv:Fault>   

If your application server needs to communicate with .Net clients, and these .Net clients require the use of a default namespace to define the contents of the Fault detail, set this property to true. When this property is set to true, the message that the application server issues is similar to the message that was sent from a version previous to a Version 6.x application server.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.webservices.suppressHTTPRequestPortSuffix

Use this property to control whether a port number can remain in an HTTP POST request that sends a SOAP message.

Some web service implementations do not properly tolerate the presence of a port number within the HTTP POST request that sends the SOAP message. If you have a web service client that needs to interoperate with web service that cannot tolerate a port number within an HTTP POST request that sends a SOAP message, set this custom property to true.

When you set this property to true, the port number is removed from the HTTP POST request before it is sent.

Avoid trouble: You must restart the server before this configuration setting takes effect.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.AppendAcceptHeader

Use this property to specify a string to append to the HTTP Accept header that is sent by JAX-WS web service requests. The default value is null.

com.ibm.ws.websvcs.attachments.sizethreshold

Use this property to specify, in bytes, the maximum size of an attachment on the JAX-WS client or service that can be written to memory. By default, the maximum attachment size is set to 11 MB. With this value, if an attachment exceeds 11 MB, it is cached to the file system instead of written to memory. When you use this custom property, as you increase the maximum cache size, there is a greater impact on performance and potentially to the Java heap.

Avoid trouble: To specify the maximum size of an attachment on the JAX-RPC client or service, see the com.ibm.websphere.webservices.attachements.maxMemCacheSize custom property.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.dynamic.ssl.proxy

The host or port information can be presented incorrectly in the webservices' connection information when the following are configured:
  • The TLS endpoint is configured in the proxy settings (https.proxyHost https.proxyPort)
  • The TLS endpoint is configured as a dynamic outbound setting.
The connection information does not match the dynamic outbound settings when the connection is served by JAX-WS.

Setting this property to true for JAX-WS allows the WebSphere Application Server to update the connection information correctly.

The default value is false.

com.ibm.ws.websvcs.getJAXBContext.cacheClassList

Use this property to cache a list of the Java Architecture for XML Binding (JAXB) classes contained in a package.

Typically, when building a JAXBContext, if a package does not contain either a ObjectFactory or package-info class file, the package is searched for all potential JAXB classes. This search process can be time consuming and can be delayed by JAR file locking. Set this property to true to cache the class list for each package, eliminating the need for subsequent searches of the same package. Later JAXBContext creation requests retrieve the cached version of the class list instead of initiating a new search.

Because the class list cache is created using a SoftReference, the cache can be released if available memory becomes low.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.getJAXBContext.cacheClassList.persist

Use this property to create a disk cache of the Java Architecture for XML Binding (JAXB) classes contained in a package.

Typically, when building a JAXBContext, if a package does not contain either a ObjectFactory or package-info class file, the package is searched for all potential JAXB classes. This search process can be time consuming and can be delayed by JAR file locking. Set this property to true to create a disk cache of the class list for each package, eliminating the need for subsequent searches of the same package. Later JAXBContext creation requests retrieve the cached version of the class list instead of initiating a new search.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.logOperationExceptionAsDebug

SOAP fault exceptions are always written using log.error, which is written to SystemOut.log as well the Trace.log. Use this property to ensure that SOAP fault exceptions are logged to ONLY Trace.log when tracing is enabled, and NOT to SystemOut.log. The property does not distinguish the type of SOAP fault exceptions logged in SystemOut.log.

Avoid trouble: SOAP fault exceptions are only seen in Trace.log when web services traces are turned on and when com.ibm.ws.websvcs.logOperationExceptionAsDebug=true.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.saaj.converter.defaultReturnEncoding

Use this property to convert data for a JAX-WS handler to use a different encoding from the JVM default. For example, -Dcom.ibm.ws.websvcs.saaj.converter.defaultReturnEncoding=UTF-8. The default value is unset.

com.ibm.ws.websvcs.suppressHTTPRequestPortSuffix

Use this property to prevent the JAX-WS runtime from appending the port number to the HTTP Host header value to a request.

A JAX-WS client might receive a java.io.IOException in response to a request, especially if there is a non-IBM web server located between the client and the web service the client is trying to call. This intermediary server might not understand where to route the request because the JAX-WS runtime has appended the port number to the HTTP Host header value. For example, JAX-WS runtime might have changed the header value from the endpoint URL lilygirl.austin.mycompany.com to the URL lilygirl.austin.mycompany.com:80, which includes the port number.

To prevent the JAX-WS runtime from appending the port number to the HTTP Host header value, add this custom property to your JVM settings, and set it to true. When this property is set to true, the Host header only contains the hostname of the endpoint URL, for example, Host: lilygirl.austin.mycompany.com

The default value for this property is false, which means that, the port number is appended to a Host header value.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.transport.enableProxyTunnel

Set this property to true to enable the web services client to access resources through a web proxy server. The default setting for this property is false, which indicates that tunneling is not to be used in the web services transport layer for proxies.
Example: By leaving the default setting of false, a JAX-WS web service client that attempts to call a remote web service over HTTPS experiences an exception when the call is directed through an HTTP server that is configured as a forward proxy.

The default value is false.

If you decide to use this custom property, you must specify it as a proxy server JVM custom property.

com.ibm.ws.websvcs.relaxClientPolsetMatching

Use this property to allow JAX-WS client-side policy sets to be applied at the service or lower level through the administrative console when the client code spans more than one archive file.

The default value is false.

com.ibm.ws.websvcs.transport.jms.enableBasicAuthOnResponse

Use this property to specify whether the JMS policy set basic authorization user ID and password is applied to JMS response messages. By default, the JMS policy set basic authorization user ID and password are not applied to JMS response messages.

If you add this property to your JVM settings, and specify true as the value of this property, the JMS policy set basic authorization user ID and password is applied to JMS response messages. If this property is set to false, neither the user ID nor the password is applied.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.websvcs.unifyServiceMessage

Set this property to true to have JAX-WS applications display the JAX-RPC message, Hi there, this is a Web service!, in a browser window instead of the JAX-WS specific message Hello! This is an Axis2 Web Service! when a service URL is entered in a browser.

The default value is false.

com.ibm.ws.websvcs.unmanaged.client.dontUseOverriddenEndpointUri

You might want a request by an unmanaged JAX-WS client service to be sent to the endpoint URL that is specified in the Overridden endpoint URL field on the administrative console. The value of this managed field, which is set as part of the web services client port configuration, overwrites the endpoint that is specified in the WSDL file. For more information on this field, read about the web services client port.

Avoid trouble: If you have either all managed clients or a mixture of both managed and unmanaged clients, you can edit the Overridden endpoint URL field in the administrative console. However, if you do not have any managed clients, you cannot edit the field.

Normally, you do not want an unmanaged JAX-WS client service to access this managed client service function. However, you might depend on unmanaged JAX-WS client services accessing this URL. By default, the com.ibm.ws.websvcs.unmanaged.client.dontUseOverriddenEndpointUri custom property is set to false to allow unmanaged JAX-WS client services to access the endpoint URL that overwrites the endpoint in the WSDL file.

This custom property is set on the application server level where a JAX-WS client is installed or a Java EE client exists if you run the launchClient.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.ws.wsba.protocolmessages.twoway

Use this property to improve the performance of an application server that is handling requests for Web Services Business Activities (WS-BA). Specifying true for this custom property improves application server performance when WS-BA protocol messages are sent between two application servers. The default value is true.

Avoid trouble: If you decide to use this custom property, the property must be set on the application server that initiates the requests. It does not have to be set on the application server that receives the requests.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

com.ibm.ws.wspolicy.ignoreWSP12inPackagedWSDL

You use this property and set it to a value of true so that any WS-Policy assertions that are not part of the WS-Policy 1.5 namespace are ignored and do not result in message CWPOL0040E being issued. In such a case, processing of WS-Policy in the client proxy's WSDL continues such that any valid WS-Policy 1.5 assertions for WS-Addressing are applied to the JAX-WS 1.5 assertions are applied to the JAX-WS client proxy.

com.ibm.ws.wspolicy.v7migration.disableClientWSDLWSPolicyProcessing

Use this property to disable the processing of the packaged Web Services Description Language (WSDL) file of the JAX-WS client for the WS-Addressing policy. When this property is set to false, the WSDL file of the client is processed for the WS-Addressing policy. When this property is set to true, the WSDL file of the client is not processed. The default is false.

[z/OS]

com.ibm.ws390.SystemOutErrCodepage

Use this custom property to specify an encoding schema for messages issued using System.out and System.err with the println, print, and write methods other than EBCDIC. If no encoding schema is specified, EBCDIC, which is the default encoding schema, is used for these messages.

The value specified for this property must be in string format.

If you decide to use this custom property, you must specify it as a JVM custom property for the servant.

com.ibm.ws.wssecurity.useInboundBodyOptimization

Use this custom property to indicate to the JVM that you want the WS-Security runtime to force the use of key encryption. To force key encryption, set the property to false.

com.ibm.ws.wtp.package.loads

This custom property enables creation of package objects for classes that are loaded by archive class loaders.

Valid values are true and false.

The default value is false.

Set the property to true to enable the creation of package objects for classes loaded by archive class loaders. To prevent the creation of package objects for classes loaded by archive class loaders, set the property to false.

com.ibm.wsspi.amm.merge.ignoreValidationExceptions

Use this custom property to indicate to the JVM that it should ignore validation exceptions that might occur during EJB processing. When an application is configured with necessary classes defined in shared libraries during EJB processing, incomplete information may be generated. As a result, a validation exception might occur and the following exception message may appear:
AnnotativeMetadataManagerImpl merge caught exception while merging com.ibm.wsspi.amm.validate.ValidationException: 
the interface com.xyz.app.myappRemote does not define a
valid remote business interface; the method mygetMethod does not
conform to RMI rules.

Set this property to true if you want the JVM to ignore these validation exceptions.

The default value is false.

If you decide to use this custom property, you must specify it as a JVM custom property for the application server.

com.ibm.wsspi.wssecurity.dsig.enableEnvelopedSignatureProperty

Use this custom property to indicate to the JVM that you want the WS-Security runtime to verify an XML Digital Signature in the same manner as it did in Versions 7.0.0.21 and earlier, and 8.0.0.3 and earlier.

Avoid trouble: This property should only be set to true if your environment includes a cell that has application servers at different fix pack levels, and you are encountering compatibility problems.
In Versions 7.0.0.21 and earlier, and 8.0.0.3 and earlier, when WS-Security verifies an XML Digital Signature that uses the https://www.w3.org/2000/09/xmldsig#enveloped-signature transform algorithm, and the signed element has attributes with a namespace prefix, a Digest value mismatch error message, similar to the following error message, might occur:
SAML Assertion signature is verified.Core validity=false
Signed info validity=true Signed info
message='null'(validity=false message='Digest value mismatch:
calculated: KCuNwlUAk5+G2PYb8fZ+Y1hTMtw='
uri='#Assertion-1234' type='null')

If an element to be signed contains an attribute with a namespace prefix, the WS-Security runtime canonicalizes the element before calculating the digest value.

In this version of the product and in Versions 7.0.0.23 and higher and 8.0.0.4 and higher, the WS-Security runtime properly handles element attributes with namespace prefixes.

Avoid trouble:
  • If you set this property to true, you must also specify the following WS-Security custom property as either an Inbound, Outbound, or Inbound and Outbound custom property for the WS-Security policy set bindings:
    com.ibm.wsspi.wssecurity.dsig.oldEnvelopedSignature=true
  • If you set this property to true, and are using the SAMLTokenFactory to create a SAML token, add the following property to the SAMLIssuerConfig.properties file:
    com.ibm.wsspi.wssecurity.dsig.oldEnvelopedSignature=true

If you decide to use this custom property, you must specify it as a JVM custom property for the application server.

com.ibm.xml.xlxp.jaxb.opti.level

Use the com.ibm.xml.xlxp.jaxb.opti.level custom property to control whether optimization methods are enabled for Java Architecture for XML Binding (JAXB) unmarshalling (deserialization) and marshalling (serialization). The following table lists the supported values for this custom property and their effect on applications and web services.
Table 2. Supported values for the custom property . The table includes the custom property value and the effect of the custom property on applications and web services.
Custom property value Effect
com.ibm.xml.xlxp.jaxb.opti.level=0 Optimization methods are not enabled.
com.ibm.xml.xlxp.jaxb.opti.level=1 Only unmarshalling optimization methods are enabled.
com.ibm.xml.xlxp.jaxb.opti.level=2 Only marshalling optimization methods are enabled.
com.ibm.xml.xlxp.jaxb.opti.level=3 Both unmarshalling and marshalling optimization methods are enabled, which is the default value.

For optimum performance, set the custom property value to 3. This value increases throughput for web services and applications that use JAXB directly. If you are experiencing issues with optimization after setting this value, change the value to 0 as a temporary workaround.

You can set this custom property on the application server level only.

com.ibm.xml.xlxp2.api.util.encoding.DataSourceFactory.bufferLength

Setting this JVM custom property to a smaller value such as 2048 can reduce the memory usage if the 64 KB buffers (the default) are only partially filled by the InputStream when they are in use. The buffers are cached within the XML parser com/ibm/xml/xlxp2/api/wssec/WSSXMLStreamReader. A reduction in memory usage reduces the overall memory linked to each parser object.

com.ibm.xml.xlxp2.api.util.Pool.STRONG_REFERENCE_POOL_MAXIMUM_SIZE

The value of this system property is an integer, and when set, it limits the number of XMLStreamReaders and XMLStreamWriters that are cached using strong references.

To avoid an OutOfMemoryError, set the system property to 0. This forces all XMLStreamReaders to be cached using SoftReferences, and enables the garbage collector to reclaim the memory they occupy in the cache at any time.

When this system property is not set, the default value is 10.

config_consistency_check

Use this property to optionally turn off the default workspace consistency process. The deployment manager maintains a master configuration repository for the entire cell. By default, when the configuration changes, the product compares the configuration in the workspace with the master repository to maintain workspace consistency. However, the consistency verification process can cause an increase in the amount of time to save a configuration change or to deploy a large number of applications. The following factors influence how much time is required:
  • The more application servers or clusters there are defined in cell, the longer it takes to save a configuration change.
  • The more applications there are deployed in a cell, the longer it takes to save a configuration change.

If the amount of time required to change a configuration change is unsatisfactory, you can add the config_consistency_check custom property to your JVM settings and set the value of this property to false.

Supported configurations: The config_consistency_check custom property affects the deployment manager process only. It does not affect other processes including the node agent and application server processes. The consistency check is not performed on these processes. However, within the SystemOut.log files for these processes, you might see a note that the consistency check is disabled. For these non-deployment manager processes, you can ignore this message.

deactivateWildCardURIMapping

Use this property to enable the plugin-cfg.xml file generator to recognize the URI patterns specified on the file.serving.patterns.allow attribute in the ibm-web-ext.xmi file for a web application.

The plugin-cfg.xml file generator only recognizes the URI patterns specified on the file.serving.patterns.allow attribute if the FileServingEnabled attribute in that ibm-web-ext.xmi file is set to true. However, when the FileServingEnabled attribute is set to true, the plugin-cfg.xml file generator automatically adds the wildcard URI mapping, /* , to the plugin-cfg.xml file, which negates the usefulness of defining unique file serving patterns.

Setting the deactivateWildCardURIMapping property to true prevents the plugin-cfg.xml file generator from adding the /* to the plugin-cfg.xml file, and enables the plugin-cfg.xml file generator to recognizes the URI patterns specified on the file.serving.patterns.allow attribute. If this property is not added to the JVM settings, or is set to false, the /* is automatically added to the plugin-cfg.xml file.

This property is set at the deployment manager level.

DISABLE_LOCAL_COMM_WHEN_SSL_REQUIRED

Specifies whether localComm or SSL should be used when transport level SSL is supported on the client or server side, and is required on the other side.

localComm should not be used when transport level SSL is supported on the client or server side, and is required on the other side. In this situation, you should set this custom property to true to ensure that SSL is used instead of localComm.

The default value for this property is false, which means that localComm is used.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

When you specify this property for an application server:
  • The CSIv2 Inbound transport setting must be set to SSL-supported, or SSL-required. See the topic Configuring inbound transports for more information about these settings.
  • On the client side, the com.ibm.CORBA.loginSource property in the sas.client.props file must be set to none.
  • One of the following settings must be inplace on the client side:
    • com.ibm.CSI.performTransportAssocSSLTLSRequired=true
    • com.ibm.CSI.performTransportAssocSSLTLSSupported=true

    Or, if a WebSphere server is acting as the client, the CSIv2 Inbound transport setting must be set to SSL-supported, or SSL-required on that server.

disable.prejavaee5.application.library

Use this custom property to control whether an application with a pre-Java EE 5 application deployment descriptor uses the application library folder.

In WebSphere Application Server v9.0 and later, when an application contains a deployment descriptor that uses a pre-JavaEE5 specification, a default value of lib is used for the application library folder name. In earlier versions, the application library folder was disabled when the application contained a deployment descriptor that used a pre-JavaEE5 specification. When this custom property is set to true, this prior behavior is restored, and the application library folder is disabled for applications that use a pre-Java EE 5 deployment descriptor. The default value is false.

disableWSAddressCaching

Use this property to disable address caching for web services. If your system typically runs with lots of client threads, and you encounter lock contention on the wsAddrCache cache, you can set this custom property to true, to prevent caching of the web services data.

If you specify networkaddress.cache.ttl with a value of zero or any other positive integer, this property must be set to true to avoid caching of an IP address in the webservice engine. Networkaddress.cache.ttl is used to indicate the number of seconds to cache a successful lookup.

The default value is false.

DRS_BATCH_INTERVAL_SIZE

Specifies the maximum number of objects that can be included in a batch of Data Replication Service (DRS) replicated HTTP session data. If there are less than the specified number of objects in the HTTP session data being replicated, all of the session data is replicated in a single batch.

By default, DRS replicates 50 HTTP session data objects in a batch. Because serializing a large message can cause an out-of-memory condition, you might want to include a smaller number of objects in each batch, especially if you have application servers that join established, fully-populated, replication domains.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

DRS_THREADPOOL_MINSIZE

Specifies the minimum number of threads to allow in the data replication service (DRS) thread pool.

When an application server starts, threads are not initially assigned to the thread pool. Threads are added to the thread pool as the workload that is assigned to the application server requires them and until the number of threads in the pool equals the number of threads that are specified by this custom property. After this point in time, additional threads are added and removed as the workload changes. However, the number of threads in the pool never decreases to less than the number that is specified by this custom property, even if some of the threads are idle.

The default value for this custom property is 40 threads.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

DRS_THREADPOOL_MAXSIZE

Specifies the maximum number of threads to maintain in the DRS thread pool.

The default value for this custom property is 100 threads.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

DRS_THREADPOOL_ISGROWABLE

Specifies whether the number of threads can increase beyond the maximum size that is configured for the DRS thread pool.

The maximum number of threads that can be created is constrained only within the limits of the Java virtual machine and the operating system. When a thread pool, that is allowed to grow, expands beyond the maximum size, the additional threads are not reused and are discarded from the pool after processing the work items for which they were created is completed.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

dynacache.jms.cacheInstance

When dynamic cache service multi-cell and multi-core group invalidation is enabled, use this property to specify the cache instance to use for processing invalidations. Setting this property to "*" causes invalidation IDs to be processed on all cache instances. This property should be set on the service integration bus servers.

By default, the baseCache cache instance is used. You can use the administrative console to determine the names of the cache instances that are defined for your system.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

dynacache.jms.connRetryInterval

When dynamic cache service multi-cell and multi-core group invalidation is enabled, use this property to specify the number of seconds that a cluster member waits before attempting to reconnect to a service integration bus server.

The default value for this property is 30.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

dynacache.jms.invProcessingDelay

When dynamic cache service multi-cell and multi-core group invalidation is enabled, use this property to specify the number of seconds the service integration bus server queues invalidation IDs before processing them.

The default value for this property is 20.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

dynacache.jms.numStoredInvalidations

When dynamic cache service multi-cell and multi-core group invalidation is enabled, use this property to specify the maximum number of invalidation IDs a cluster member can store while waiting for a service integration bus server to become available. After the threshold is reached, the oldest invalidation IDs are removed as new IDs are added.

The default value for this property is 10000.

If you decide to use this custom property, specify it as an application server JVM custom property unless otherwise indicated within the context of a specific task.

[z/OS]

invocationCacheSize

Use this property to control the size of the invocation cache. The invocation cache holds information for mapping request URLs to servlet resources. A cache of the requested size is created for each worker thread that is available to process a request. The default size of the invocation cache is 50. If more than 50 unique URLs are actively being used (each JavaServer Page is a unique URL), you should increase the size of the invocation cache.

A larger cache uses more of the Java heap, so you might also need to increase the maximum Java heap size. For example, if each cache entry requires 2 KB, maximum thread size is set to 25, and the URL invocation cache size is 100; then 5 MB of Java heap are required.

You can specify any number higher than 0 for the cache size. Setting the value to zero disables the invocation cache.

[AIX Solaris HP-UX Linux Windows][IBM i]

java.net.preferIPv4Stack

Use this property to disable IPv6 support. On operating systems where IPv6 support is available, the underlying native socket that the product uses is an IPv6 socket. On IPv6 network stacks that support IPv4-mapped addresses, you can use IPv6 sockets to connect to and accept connections from both IPv4 and IPv6 hosts.

Setting this property to true disables the dual mode support in the JVM which might, in turn, disrupt normal product functions. Therefore, it is important to understand the full implications before using this property. In general, setting this property is not recommended.

The default value for this custom property is false.

[AIX Solaris HP-UX Linux Windows][IBM i]

java.net.preferIPv6Addresses

Use this property to disable IPv4 support. Setting this property to true disables the dual mode support in the JVM which might, in turn, disrupt normal product functions. Therefore, it is important to understand the full implications before using this property. In general, setting this property is not recommended.

The default value for this custom property is false.

java.util.logging.configureByLoggingPropertiesFile

Use this custom property to specify whether the JVM uses the logging.properties file to configure JSR-47 logging.

If this property is not added to the JVM configuration settings, or is set to false, the configuration settings contained in the logging.properties file are not picked up because the product overrides the base JSR47 logging configuration with the java.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager system property setting. In this situation, only logging settings that can be changed programmatically, such as the addition of handlers, and formatters, can be modified.

When this property is set to true, the JVM still configures the WsLogManager as the LogManager, but during server startup, the logging configuration for applications using JSR-47 logging is initialized based on settings in the logging.properties file. Refer to the Java Utility Logging API documentation for valid logging properties and format that can be specified in the logging.properties configuration file.
Avoid trouble: Do not assign java.util.logging.ConsoleHandler to any of the loggers because this assignment can cause an infinite loop.

[AIX Solaris HP-UX Linux Windows][IBM i]The logging.properties file is located in the <<WAS_install>>/java/jre/lib/logging.properties directory, and can be customized as needed.

[z/OS]The logging.properties file is located in the <<WAS_install>>/java/J*/lib/logging.properties directory, and can be customized as needed.

The default value is false.

jaxws.asyncClient.maxThreadPoolSize

Use this property to limit the number of concurrently executing threads for JAX-WS async client requests.

By default the number of threads is not limited.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.handler.reducecaching

Use this property to ensure that JAX-WS handlers correctly update SOAP messages.

SOAP messages that are updated by a JAX-WS handler appear correct when dumped in the handler, but when a message is sent, the changes are missing. Set this property to true if your handler calls getMessage() multiple times and messages are lost.

Avoid trouble: This property is not compatible with modifying SOAP headers directly through JAX-WS message context properties. Using both types of message modification might cause information loss.

The default value is false.

jaxws.ignore.extraWSDLOps

Use this property if there are more operations in the WSDL than built into the client.

Default client behavior is to validate the operations built into the client against the operations in WSDL and fail if they do not match. Set this property to true if there are more operations in the WSDL than built into the client and the WSDL validation will succeed and the client can be invoked.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.ignoreMetadataComplete

Set this JVM property to true to perform a webservice annotation scan even if metadata-complete is set on a module. The default is false.

In the default case, JAX-WS web services are not detected when metadata-complete is set to true.

Avoid trouble: This JVM property must be set on every JVM in the WebSphere Application Server cell.

jaxws.JAXBContext.permStoreCostThresholdMsec

Use this property to enable caching of JAXBContext objects that require more than the specified amount of time to construct.

JAX-WS web services or clients might experience delays during execution when constructing JAXBContext objects that handle hundreds of classes. Caching time-intensive JAXBContext objects accelerates web service and client execution by eliminating the need to reconstruct the JAXBContext object upon each use.

Set this property to a value, in milliseconds, that is greater than 0 to enable caching of JAXBContext objects that require more than the specified amount of time to construct. The cache persists until the JVM is restarted. The recommended value is 5000 milliseconds or greater.

The default value is 0, which does not enable caching.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.JAXBContext.permStoreMaxSize

Set this property to an integer value to specify the maximum number of entries in the JAXBContext cache. If the cache becomes full, stale entries are replaced first, followed by the entry with the lowest construction time.

The default value is 32.

Avoid trouble: This property modifies the cache created by property jaxws.JAXBContext.permStoreCostThresholdMsec

jaxws.JAXBContext.permStoreStaleThresholdHours

Set this property to a value, in hours, after which an entry in the JAXBContext cache that has not been accessed is considered stale. If the cache becomes full, stale entries are replaced first.

The default value is 24 hours.

Avoid trouble: This property modifies the cache created by property jaxws.JAXBContext.permStoreCostThresholdMsec

jaxws.payload.highFidelity

Use this property to enable lossless transformations. When this property is set to true, the Web Service runtime guarantees that the incoming message and the message at the SOAPHandler boundary are the same.

Typically, the SOAP message received by a JAX-WS SOAPHandler is not exactly the same as the inbound SOAP message. For example, the message received by the JAX-WS SOAPHandler might use different xml prefixes than the original inbound message. These subtle changes do not affect the logical interpretation of the message. However, you must add this property to your JVM settings and set the property to true if messages at the SOAPHandler boundary must be exactly the same as the incoming messages. For example, the Canonicalization Specification (C14N) requires that the prefix names are preserved.

Best practice: You should only use this property if your SOAP requests access the contents of a soapenv:Body element within your SOAPHandlers. Setting the property to true might degrade Web Service runtime performance.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.provider.interpretNullAsOneway

If you have a JAX-WS web service that defines a Provider-based endpoint using the javax.xml.ws.Provider annotation and a WSDL file is not specified, you can use this custom property to control how the JAX-WS runtime environment behaves when the Provider returns a null value from the invoke() method. By default, the runtime environment will send back a response that consists of a SOAPEnvelope that contains an empty SOAPBody element.

If this property is set to true, whenever the Provider implementation returns a null value and a WSDL file is not defined, the runtime environment interprets the null value returned from the Provider implementation as a request-only operation so that no response is returned. As with all request-only operations, some qualities of services, such as WS-Transactions, will not be available.

If the javax.xml.ws.WebServiceProvider annotation specifies a WSDL value and the WSDL defines a request and response operation, the JAX-WS runtime environment always returns a response that consists of a SOAPEnvelope that contains an empty SOAPBody, regardless of the setting of this property.

The default value is false.

You must set this property to true for each server that requires a change in the default value.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.runtime.inheritedImplMethodsAccessible

Use this property to revise the web service runtime to allow inherited methods to be invoked. This behavior change is enabled by setting the property to true.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.runtime.restrictStaticWebmethod

Use this property to prevent exposure of static operations. When this property is set to true, the JAX-WS runtime prevents the exposure of static operations.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.share.dynamic.ports.enable

Use this property to specify the visibility of dynamic ports across JAX-WS web services.

By default, dynamic ports are visible only to the instance of the service that created the port. Set this property to true to share dynamic ports across web services.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.soapfault.local.exceptions.disable

Use the jaxws.soapfault.local.exceptions.disable property to prevent locally occurring exceptions on a JAX-WS client from being treated as a SOAPFault. By default, if a JAX-WS client encounters a local exception, a SOAPFault is created for the exception. An example of a local exception is a ConnectException caused by an invalid host or port. The relevant JAX-WS application handlers handleFault methods are called with the SOAPFault. Then a SOAPFaultException is thrown back through the JAX-WS client's invoked method.

By setting this property to true, local exceptions create an empty message. The relevant JAX-WS application handlers handleMessage methods are called with the empty message, then a WebServiceException is thrown back through the JAX-WS client's invoked method. This was the behavior in previous releases.

The default value is false.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

jaxws.useSafeIPC

Set this property to true on application servers if errors occur in JAX-WS web services when the enableInProcessConnections property is set to true in the Web Container. This might happen when web services applications that call each other cannot safely share a single thread. Setting this property to true causes the applications to run on separate threads.

The default value is false.

jdk.corba.allowOutputStreamSubclass

Set this property to true to ensures that the org.omg.CORBA_2_3.portable.OutputStream can be subclassed.

Applications running with a security manager might experience a dip in performance because of the additional security checks that are now performed to secure the org.omg.CORBA_2_3.portable.OutputStream default constructor when a security manager is installed. These additional security checks might cause incompatibilities with existing application deployments. Adding this property to your JVM settings and setting it to true prevents these incompatibilities from occurring.

This property can be set at either the application server, node agent, or deployment manager level, but is usually specified at the application server level.

localWebServerUseNodeSync

When the web server and plug-in are on the same system as the deployment manager, the propagation of the web server plug-in configuration file, plugin-cfg.xml, is usually done by a simple file system copy from one directory to another. If a node agent exists on the same system, a local managed node, you can force the deployment manager to propagate the plug-in configuration to the node agent. Use a node synchronization instead of the default file system copy method.

Go to the custom properties for the Deployment Manager JVM process by selecting System Administration > Deployment Manager > Java and Process Management > Process definition > Java Virtual Machine > Custom properties. Add the localWebServerUseNodeSync property.

The correct value to use for this property is the name of the local node that is associated with the web server definition, as shown in the following example:
localWebServerUseNodeSync = wasNode01
If multiple web server definitions are associated with multiple local nodes on the same system as the deployment manager, specify multiple node names with a semicolon as the delimiter between them, as shown in the following example:
localWebServerUseNodeSync = wasNode01;wasNode02

Restart the deployment manager for the property to take effect.

Now whenever you propagate a web server plug-in, the deployment manager syncs a node to copy the plugin-cfg.xml file to the local node agent. The node agent then copies the file to the plugins/config/webservername directory. This method is the same as propagation to a remote managed node.

ODCClearMessageAge

Use this property to establish a length of time, specified in milliseconds, after which an ODC message is removed from the bulletin board, even if the receiver has not acknowledged the message. Specifying a value for this property helps prevent the build up of messages that, for some reason, do not get acknowledged.

You can specify any positive integer as a value for this property, but a value of 300000 (5 minutes) or higher is recommended to avoid premature removal of messages.

The default value is 300000 milliseconds.

ODCInit.disabled

Set this property to true if you want to disable the communication between processes for the On Demand Configuration (ODC) component, and for all local ODC processing.

The on demand configuration component is used when deploying Web services-based applications, and when using a WebSphere Application Server Proxy Server to handle requests. The on demand configuration component is enabled or disabled on a cell-wide basis. Therefore, if your topology contains any proxy servers, or any web services based applications, you should not disable the on demand configuration service.

If you are running in a large topology environment where Web services-based applications are not deployed, or WebSphere Application Server Proxy Servers are not used to handle requests, the on demand configuration component is not utilized, and you can set this property to true. Setting this property to true disables the on demand configuration component, which will reduce network bandwidth and CPU utilization.

The default value is false.

org.apache.aries.blueprint.header.mandatory

When set to true, bundles with blueprint must have a blueprint header. This allows apache aries to avoid expensive scanning when there is no blueprint header.

org.apache.axiom.attachments.tempfile.expiration

If excessive accumulation of temporary files of the form AxisXXXXXX.att occurs, set this property to a value in seconds after which the JAX-WS runtime should delete these temporary files that are used for storing MTOM attachments.

The default value is 0. Files are deleted when the JVM exits.

org.apache.el.parser.SKIP_IDENTIFIER_CHECK

Us this property to relax the checking that occurs for EL variable identifiers. The relaxed checking behavior is equivalent to the behavior observed in WebSphere Application Server versions prior to Version 8.0.

Starting with Version 8.0, the checking of EL variable identifiers is more strict. The checking process now checks for Java reserved keywords as well as reserved EL keywords. Prior to Version 8.0, the checking process only checked for reserved EL keywords.

If any variable identifier used in a JSTL/EL script includes any of the reserved JSP keywords, the variable identifier will fail to translate, resulting in an exception. The preferred method for handling such an exception is to modify the JSTL/EL code to eliminate the usage of the reserved keywords as variable names. However, if this is not possible or practical, set this property to true to relax the level of checking that occurs to the pre-Version 8.0 level.

A list of reserved JSP keywords can be found at http://docs.oracle.com/javaee/5/tutorial/doc/bnahq.html#bnail

org.apache.taglibs.standard.xml.accessExternalEntity

Set this property to allow access to external entities in JSP files when you use the <x:parse> and <x:transform> tags.

This property takes values such as the following values:
  • all
  • http
  • jar:file,file
  • http,file

Assign all of the URI schemes to be granted external access and separate them with commas. Use the value all to grant external access to any URI scheme.

org.eclipse.jst.j2ee.commonarchivecore.disableZip

Use this custom property to allow ZIP archives to be processed as simple files.

Set this property to true to allow ZIP archives to be processed as simple files when scanning the files of a deployed application.

The default value is false.

This property can also be enabled for a specific EAR or WAR by adding the following line to the /META-INF/MANIFEST.MF file of the EAR or WAR:
IBM-Enable-File-List-Include-Filter : true

Add this property to the MANIFEST.MF file to enable an application to start faster, regardless of the system setting.

Avoid trouble: The MANIFEST.MF file has formatting rules. For example, the file must end with a new line or carriage return. The last line of the file is not parsed properly if it does not end with a new line or carriage return.
[9.0.5.1 or later]

org.eclipse.jst.j2ee.commonarchivecore.EnableFilesListIncludeFilter

Use this custom property to improve the application start time and reduce memory usage when an application starts.

This property is useful for applications that contain many files.

If this property is set to false, the application server builds a list that contains a file object for every file in the WAR file. When applications have many files, the list can be slow to build and can use a large amount of memory. Set the value to true to instruct the application server to reduce its application file list size by including only files that are related to Java EE. It excludes files that are not needed to start an application.

The default value is false.

This property can also be enabled for a specific EAR file or WAR file by adding the following line to the /META-INF/MANIFEST.MF file of the EAR file or WAR file:
IBM-Enable-File-List-Include-Filter : true

Add this property to the MANIFEST.MF file of an application to enable it to start faster, regardless of the system setting.

Avoid trouble: The MANIFEST.MF file has formatting rules. For example, the file must end with a new line or carriage return. The last line of the file is not parsed properly if it does not end with a new line or carriage return.

org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_comparator

This property is one of two properties that you can use to define the class path order for JAR files in the WEB-INF/lib directory. The other is org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_order.

Use this property to specify a class that implements the java.util.Comparator interface. Your Comparator class determines the sorting order for the JAR file names. You must place your Comparator class in the <WAS_HOME>/lib/ext folder.

Java EE does not define the order that WEB-INF/lib JAR files appear in the class path. The default order is the order in which the list of JAR files is returned from the operating system. Therefore, the order is operating system-dependent.

It is better for your application to have no dependency on the order. Setting this property might affect other applications on the server that also have a dependency on the class path order. Therefore, it is better to set the META-INF/MANIFEST.MF attribute directly in the application, rather than to set this JVM custom property.

To define the WEB-INF/lib class path order in the application, add the following attribute to the MANIFEST.MF file of the application or the web module.

Attribute name: IBM_WEBINFLIB_COMPARATOR

value: fully qualified class name of your custom Comparator class

For example:

IBM_WEBINFLIB_COMPARATOR: my.custom.comparators.CustomComparator

A built-in alphabetical Comparator is provided. To set the class path order as alphabetical, specify alpha as the value for IBM_WEBINFLIB_COMPARATOR.

For example:

IBM_WEBINFLIB_COMPARATOR: alpha

To define the class path order for all applications on the server, set the JVM custom property. Since this configuration could potentially affect other applications running on the server, it is only recommended as a quick and convenient test.

For example:

org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_comparator = my.custom.comparators.CustomComparator

org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_order

This property is one of two properties that you can use to define the class path order for JAR files in the WEB-INF/lib directory. The other is org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_comparator.

Java EE does not define the order that WEB-INF/lib JAR files appear in the class path. The default order is the order in which the list of JAR files is returned from the operating system. Therefore, the order is operating system-dependent.

It is better for your application to have no dependency on the order. Setting this property might affect other applications on the server that also have a dependency on the class path order. Therefore, it is better to set the META-INF/MANIFEST.MF attribute directly in the application, rather than to set this JVM custom property.

To define the WEB-INF/lib class path order in the application, add the following attribute to the MANIFEST.MF file of the application or the web module. You only need to specify the JAR file names that have an order dependency.

Attribute name: IBM_WEBINFLIB_ORDER

value: comma-separated list of JAR file names

For example:

IBM_WEBINFLIB_ORDER: First.jar, Second.jar, Third.jar

To define the class path order for all applications on the server, set the JVM custom property. Since this configuration could potentially affect other applications running on the server, it is only recommended as a quick and convenient test.

For example:

org.eclipse.jst.j2ee.commonarchivecore.ibm_webinflib_order = First.jar, Second.jar

org.eclipse.jst.j2ee.commonarchivecore.ignore.ejb.in.war

Use this property if all of the following are true:
  • You have a Java EE 5 application.
  • This application contains an EJB in a WAR file.
  • Your application deploys successfully to a standalone server running Version 7.x
  • The application deployment fails when you attempt to deploy from a deployment manager that is running WebSphere Application Server Version 8.0 or later to a node that is running Version 7.x.

If all of the previous conditions are true, the deployment might fail because the application gets promoted to the Java EE 6 level during deployment. Version 7.x implements Java EE 5. EJB beans were not introduced inside WAR files until Java EE 6. When WebSphere Application Server Version 8.0 or later finds an EJB in a WAR file, it promotes the WAR file to version 3.0 and the application to Java EE 6. When this situation happens, the application cannot be deployed to a node that is running Version 7.x.

To ignore EJB beans in WAR files, and to prevent the version of the application from being upgraded, set the property to true on the deployment manager. The default value is false.

Setting this custom property applies the setting to all applications. To apply the setting to a specific application, edit the META-INF/MANIFEST.MF file and add the following line:
Ignore-Ejb-In-War-Annotation: true
Avoid trouble: When updating the application manifest, follow line-length limitations and other constraints for the manifest.

org.eclipse.jst.j2ee.commonarchivecore.FILTERBINARIES

Use this custom property to prevent certain application files from being listed during runtime processing.

Because of new JavaEE5 annotations processing requirements, more application files are typically listed during runtime processing than are listed in previous versions of the product. The additional listing might cause applications that are migrated from previous versions of the product to start more slowly, as additional time is spent listing application files.

The default value is not set.

If you decide to use this custom property, you must specify it as an application server JVM custom property.

org.eclipse.jst.j2ee.commonarchivecore.ignore.jee6.annotation

Use this property if all of the following are true:
  • You have a Java EE 5 application.
  • The application contains Java EE 6 annotations.
  • Your application deploys successfully to a standalone server that is running WebSphere Application Server Version 7.x.
  • The application deployment fails when you attempt to deploy from a deployment manager that is running WebSphere Application Server Version 8.0 or later to a node that is running WebSphere Application Server Version 7.x

If all of the previous conditions are true, the deployment might fail because the application is promoted to the Java EE 6 level during deployment. WebSphere Application Server Version 7.x implements Java EE 5 and ignores Java EE 6 annotations. WebSphere Application Server Version 8.0 or later implements Java EE 6, and therefore Java EE 6 annotations are processed. This causes a Java EE 5 application containing Java EE 6 annotations to be promoted to the Java EE 6 level. After the application is promoted, WebSphere Application Server Version 8.0 or later does not deploy the application to a node that is running WebSphere Application Server Version 7.x.

To ignore the Java EE 6 annotations, and to prevent the version of the application from being upgraded, set the property to true on the deployment manager. The default value is false.

Setting the custom property applies the setting to all applications. To apply the setting to a specific application, edit the META-INF/MANIFEST.MF file and add the following line:
Ignore-JEE6-Annotation: true
Avoid trouble: When updating the application manifest, follow line-length limitations and other constraints for the manifest.

org.eclipse.jst.j2ee.commonarchivecore.ignore.jee7.annotation

Use this property if all of the following are true:
  • You have a Java EE 5 or Java EE 6 application.
  • The application contains Java EE 7 annotations.
  • Your application deploys successfully to a standalone server that is running either WebSphere Application Server Version 7.x or 8.x.
  • The application deployment fails when you attempt to deploy from a deployment manager that is running WebSphere Application Server Version 9.x to a node running WebSphere Application Server Version 7.x or 8.x.

If all of the previous conditions are true, the deployment probably fails because the application is promoted to the Java EE 7 level during deployment. WebSphere Application Server Versions 7.x and 8.x implement Java EE 5 and Java EE 6 respectively. WebSphere Application Server Version 9.x implements Java EE 7, and therefore Java EE 7 annotations are processed. This causes a Java EE 5 or Java EE 6 application that contains Java EE 7 annotations to be promoted to the Java EE 7 level. After the application is promoted, WebSphere Application Server Version 9.x does not deploy the application to a node that is running Version 7.x or 8.x.

To ignore the Java EE 7 annotations, and to prevent the version of the application from being upgraded, set the property to true on the deployment manager. The default value is false.

Setting the custom property applies the setting to all applications. To apply the setting to a specific application, edit the META-INF/MANIFEST.MF file and add the following line:
Ignore-JEE7-Annotation: true
Avoid trouble: When you update the application manifest, follow line-length limitations and other constraints for the manifest.

org.eclipse.jst.j2ee.commonarchivecore.ignore.web.fragment

Use this property if all of the following are true:
  • You have a Java EE 5 application.
  • This application contains a WAR file with a web fragment.
  • Your application deploys successfully to a standalone server running WebSphere Application Server Version 7.x
  • The application deployment fails when you attempt to deploy from a deployment manager that is running WebSphere Application Server Version 8.0 or later to a node that is running Version 7.x.

If all of the previous conditions are true, the deployment might fail because the application gets promoted to the Java EE 6 level during deployment. WebSphere Application Server Version 7.x implements Java EE 5. Web fragments were not introduced in WAR files until Java EE 6. When WebSphere Application Server Version 8.0 or later finds a web fragment, it promotes the WAR to version 3.0 and the application to Java EE 6. When this happens, the application cannot be deployed to a node that is running WebSphere Application Server Version 7.x.

To ignore web fragments, and to prevent the version of the application from being upgraded, set the property to true on the deployment manager. The default value is false.

Setting this custom property applies the setting to all applications. To apply the setting to a specific application, edit the META-INF/MANIFEST.MF file and add the following line:
Ignore-Web-Fragment: true
Avoid trouble: When updating the application manifest, follow line-length limitations and other constraints for the manifest.

org.eclipse.jst.j2ee.commonarchivecore.openAllArchivesTrue

Use this custom property to set the server to expand all archives.

To enable expansion of non-standard archives during deployment, set the property on the Application Server process involved with the deployment. If you are using a Deployment Manager, set the property on the Deployment Manager process.

To enable expansion by the earExpander script, set the property as a Java Custom property by editing the earExpander script.

The default value is false.

Avoid trouble: This property is not applied to JARs within JARs. JARs within JARS will not be expanded, even with the property set to true. All JARs in EAR files and all JARs in RAR files are active. The processing of JARs in EAR files and JARs in RAR files is not affected by the custom property.

org.eclipse.jst.j2ee.commonarchivecore.PM62467.Disabled

Use this custom property to specify the behavior that occurs when an archive entry path contains a value that is not allowed.

When an application is deployed in WebSphere Application Server, the contents of the application archive and module files are extracted to the installedApps directory of the application server profile using the files' archive entry paths. Application files must be extracted to the installedApps directory, but if a file's archive entry path contains the value ../, the archive files could be extracted to another directory. If this custom property is false and the archive entry path contains the value ../, an ArchiveRuntimeException occurs and archive processing stops. Set this property to true to log a warning message and continue deploying the application.

The default value is false.

If you decide to use this custom property, you must specify it as a JVM custom property on the deployment manager node and the application server.

org.eclipse.jst.j2ee.commonarchivecore.unresolvedEjbRefsAreLocal

Setting this property to true causes the application server to regard unresolved EJB references as local references when it generates merged EJB deployment descriptors such as ejb-jar_merged.xml during deployment of an application. The default behavior of false causes the application server to regard unresolved EJB references as remote references.

You might find that after deployment an EJB reference was incorrectly generated as a remote reference in the ejb-jar_merged.xml file. In this situation, attempt to resolve the issue with the following methods before you set this custom property.
  • Add EJB bindings files to the application, which is the safest means of resolving the problem. For more information, see the overview topic on EJB 3.0 and EJB 3.1 application bindings.
  • The EJB runtime uses the ejb-jar_merged.xml file only when the EJB module is metadata-complete. Even when it is metadata-complete, the EJB module uses the reference only if no binding exists. If you set metadata-complete to false in the EJB module, the ejb-jar_merged.xml file is ignored, and the EJB runtime resolves the EJB reference correctly. For more information, see the topic on metadata for module settings.

If neither method is feasible, use this custom property so that the application server regards the unresolved EJB references as local during application deployment. Use caution when you set this property to true, as it might result in the opposite problem. If you deploy an application that contains remote EJB references, those remote references, if unresolved, might be set as local in the ejb-jar_merged.xml file. Therefore, set the property only on the affected application instead of on the server.

To set the property on an application, add the following line to the MANIFEST.MF file of the application:
IBM-UNRESOLVED-EJB-REFS-ARE-LOCAL-PI68735: true

This property has an effect only during application deployment. It does not affect applications that are already deployed.

overrideAutoProp

Use this custom property to propagate the plugin-cfg.xml to both the remote node repository and the remote web server location.

When this property is set to true with manual propagation, the plugin-cfg.xml is propagated to BOTH the remote node repository and the remote web server location. When this property is set to false with manual propagation, the plugin-cfg.xml is propagated to ONLY to the remote node repository and NOT to the web server location.

The default value is false.

If you decide to use this custom property, you must specify it as a node JVM custom property.

Once this property is set for the node, you must synchronize the change to the node. Setting this property does require you to stop and start the node so that the setting takes effect.

plugin.syncdisabled

Use this custom property to disable the node synchronization called by the web server plug-in configuration propagation.

When this property is set to true, web server plug-in configuration changes are not automatically synchronized across the node. This means that any web server plug-in configuration changes you make are not propagated to the web server until you do a manual synchronization.

The default value is false.

If you decide to use this custom property, you must specify it as a node JVM custom property.

threadpool.maxsize

Use this property to control the number of threads that can be included in a newly created thread pool. A dedicated thread is created to start each application server Java virtual machine (JVM). The JVMs with dedicated threads in this thread pool are the JVMs that are started in parallel whenever the node agent starts.

You can specify an integer from 0 - 5 as the value for this property. If the value you specify is greater than 0, a thread pool is created with that value as the maximum number of threads that can be included in this newly created thread pool. The following table lists the supported values for this custom property and their effect.

Table 3. Supported values for threadpool.maxsize . The table includes the custom property value and the effect of the custom property.
threadpool.maxsize value Effect
Property threadpool.maxsize is set to 0 or not specified. The node agent starts up to five JVMs in parallel.
Property threadpool.maxsize is set to 1. The node agent starts the JVMs serially.
Property threadpool.maxsize is set to an integer value between 2 and 5. The node agent starts a number of JVMs equal to the specified value in parallel.

For example, suppose the node agent has 10 JVMs that are set as running state, which means they are started whenever the node agent starts. If you specify 3 for this property, whenever you stop and start the node agent, only three of the 10 JVMs are started in parallel when the node agent starts.

Avoid trouble:
  • If you are using the administrative console, and specify threadpool.maxsize as the name of a new JVM custom property for the node agent, you must specify a value in the Value field for this new custom property. You receive an error message if you do not specify a value.
  • If you pass a blank value to the property from the command line, the blank value is considered an illegal value, and the default behavior of the node agent is restored.

This property is not specified by default. If you decide to use this custom property, you must specify it as a node agent JVM custom property.

[z/OS]

was.xcfmonitor.enabled

Use this property to enable the use of the z/OS Cross-system Coupling Facility (XCF) for monitoring application server status. When this property is set to true, node agents can use XCF to monitor their application servers, application servers can use XCF to monitor their node agents, and an administrative agent server can use XCF to monitor its registered application servers. When this property is set to false, the TCP/IP pinging method is used to monitor application server and node agent status.

The default value is false.

webservices.unify.faults

Use the webservices.unify.faults property to enable SOAP Fault unification for JAX-WS and JAX-RPC. By default, the web service runtime environments (both JAX-WS and JAX-RPC) unify all faults generated by the runtime environment to a single type of fault containing a faultcode of Server and a faultstring of Internal Error. The faults do not contain any additional information identifying the actual cause of the fault. The unification of faults results in a more secure system, preventing detailed information regarding why inbound message processing failed from being returned to message senders.

The default value for this property is true, which causes faults to be unified. If your applications require fault details, then you can set this property to false to disable fault unification, allowing detailed information to be returned in faults.
Avoid trouble:
Regardless of the property settings, the following situations might appear:
  • If SOAP request is not well-formed, the javax.xml.stream.XMLStreamException error message is not unified.
  • If checked exceptions are defined in the WSDL file and thrown by a service provider method implementation, the exceptions are not unified.
  • If trace is enabled, the detailed information about the cause of the fault are logged.

wink.client.readTimeout

Use this property to specify how long the RestClient object waits (in milliseconds) for a response to requests before timing out. A value of 0 means that the client waits for an unlimited amount of time and does not timeout.

The default value is 60,000 milliseconds.

wink.client.connectTimeout

Use this property to specify how long the RestClient object waits (in milliseconds) before timing out when attempting to connect to the target resource. A value of 0 means that the client waits for an unlimited amount of time and does not timeout.

The default value is 60,000 milliseconds.

WSFP_DISABLE_CACHE

Set this property to true to mitigate incorrect web service cache generation during deployment, such as when the web service cache is corrupted or cannot build correctly. Symptoms of corrupt cache include the inability to retrieve generated WSDL or other errors, such as SRVE0201E or WSWS3142E.

This property is not needed under normal conditions, and setting the property can slow application startup.

The default value is false.