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

[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.

[IBM i] System Administration > Deployment manager > Java and process management > Process definition > Java virtual machine > Custom properties

[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, and 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.

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 using 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

com.ibm.cacheLocalHost

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

Note: 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.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 Avoid trouble: The setting for this property should match the setting for the com.ibm.config.eclipse.wtp.enablexmltrim custom property. Either both of these properties should be left unset, set to false, or set to truegotcha

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 Avoid trouble: The setting for this property should match the setting for the com.ibm.config.eclipse.wtp.enablejemtrim custom property. Either both of these properties should be left unset, set to false, or set to true.gotcha

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 Avoid trouble: This property might impact performance. Therefore, this property should only be specified 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.gotcha

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 Avoid trouble: This property might impact performance. Therefore, this property should only be specified 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.gotcha
[8.5.0.2 or later]

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.

[IBM i]

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 back to the original behavior, set the com.ibm.eclipse.wtp.allowRootedEntries to true.

[8.5.0.1 or later]

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 shutdown 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.

The default value is 180.

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 starting the updated application.

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

Usually during the save operation for an application update that is being performed using the rollout update process, the extension tasks of the save operation 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, thereby preventing the application from becoming corrupted during the synchronization portion of the rollout update process.

The default value is 180.

com.ibm.websphere.deletejspclasses

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

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

com.ibm.websphere.deletejspclasses.delete

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

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

com.ibm.websphere.deletejspclasses.update

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

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

com.ibm.websphere.ejb.UseEJB61FEPScanPolicy

Use this property to control whether the product scans pre-Java EE 5 modules for additional 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 functionality:
  • Allow the root cause of a transaction roll back to be included in a TransactionRolledbackLocalException if the transaction is issued by a local caller.
  • Allow the root cause of a transaction roll back from a from the 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 the a TransactionRolledbackException even though this functionality is contrary to the EJB Specification requirement.

To enable this functionality set this property to true. To disable, this functionality 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 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 are dependent on access to the same JAX-RPC stub across multiple threads.gotcha

com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine

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

com.ibm.websphere.logging.useJULThreadID

Use this property to control thread ID type 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 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.trns

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 specified in the XML bindings is ignored.

If this property is not specified, or has a value of true, an environment entry value specified in the XML bindings is given preference over the value 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 are 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 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.gotcha
Avoid trouble 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 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 will fail.gotcha

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 a large number of 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 only want the changed files within that EAR file updated on the node and then synchronized.
Avoid trouble Avoid trouble:
  • Use the com.ibm.websphere.management.application.fullupdate.application_name property if you only want 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.
gotcha

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 a large number of 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 only want the changed files updated on the node and then synchronized.
Avoid trouble 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.
gotcha

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 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 Avoid trouble: You must define this property in the node agent JVM. However, when defining 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.gotcha

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 60 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 Avoid trouble: This property is only valid if it is specified for a deployment manager.gotcha

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 Avoid trouble: This property is only valid if it is specified for a deployment manager.gotcha

com.ibm.websphere.management.configservice.getServerLogRootFromTemplate

Use this property to specify whether the value specified for the SERVER_ROOT variable 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 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 process 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 true.

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"

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.

[IBM i] Avoid trouble 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.gotcha
[8.5.0.2 or later]

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.

[8.5.0.1 or later]

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 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.bprac

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 states 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 forbids 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

[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 configured on the product that resolves to a specific IP address.
  • null specifies that the product only listens on the default IP address only.

If you cannot contact the server, check the setting for com.ibm.websphere.network.useMultihome to ensure 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.

[8.5.5.2 or later]

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 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.gotcha

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.

[8.5.0.1 or later]

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 exceeds 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 the 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 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 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 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.bprac

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 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.sptcfg

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.

Note: 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 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.
gotcha

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

[8.5.0.1 or later]

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 SOAP with Attachments API for Java (SAAJ) methods SOAPMessage.getSOAPHeader and getSOAPBody now throw a SOAPException if there is no corresponding element in the message. Previously these methods would return a null if there was no corresponding element in the message. A System property is provided to revert the behavior to return null rather than throw an exception. The property is com.ibm.websphere.webservices.soap.enable.legacy.get.behavior. The default value of the property is null which is interpreted as false. To revert the behavior to return a null, set the property to the String value true. Note that the previous behavior of returning null is not compliant with the SAAJ 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 32KB in size, 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 32KB in size. 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 the body of the message is binary data. To specify a JMS TextMessage (javax.jms.TextMessage) object, set the property to TEXT to indicate 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 directories and separate them using a semicolon (;).
Important: If your base operating system for WebSphere Application Server is Linux, Linux, or Unix, then use a colon (:) to separate the multiple Java archives (JAR) and directories.
eg: 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.

[8.5.0.1 or later]

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.

[8.5.0.1 or later]

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.

[8.5.5.1 or later]

com.ibm.websphere.wsrm.MaxSequenceBacklog

Use this property to configure the maximum number of messages on an outbound WS-RM sequence.

When the defined limit is reached, WS-RM will reject any new messages by throwing a javax.xml.ws.WebServiceException exception until the backlog decreases below 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.

[8.5.5.1 or later]

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.

[8.5.5.1 or later]

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.

[8.5.5.1 or later]

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.

[8.5.5.2 or later]

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:
  • [8.5.5.2 or later] 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 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 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 specified for this properties are case sensitive, and must be expressed as a single string with a comma followed by a space 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 Avoid trouble: Exercise caution if you update a manifest file. Manifest files have line length limitations, and other constraints that must be adhered to.gotcha
Example:
Ignore-Scanning-Archives : ant.jar,  avalon-framework-4.2.0.jar, axis.jar, CICS.jar, xerces.jar
[8.5.5.1 or later]

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 value specified for this property are case sensitive and must be expressed as a single string with a comma followed by a space 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 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 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.gotcha
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.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 specified for this property is a space delimited list of HTTP response error codes. If the status code 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.

[8.5.0.2 or later]

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.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.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 has been 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.

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 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.

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

[8.5.5.2 or later]

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 enables 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.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 very 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.

[Updated in March 2014]

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:

[Updated in March 2014]
[8.5.5.2 or later]

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.

[8.5.5.1 or later]

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 false.

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.

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 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.trns

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 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 right away even if no notification was available.trns

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 left behind 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 Avoid trouble: If an invalid value is specified for this property, the default value is used.gotcha

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 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 Avoid trouble: If an invalid value is specified for this property, the default value is used.gotcha

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 will 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.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 only 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 URI's 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 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 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.gotcha

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 in conjunction with session affinity.

Avoid trouble 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.gotcha

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 up 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 headers 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 th 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 or not 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.

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 functionality 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.

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.

[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.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.webservices.useSOAPJMSTextMessages

By default on WebSphere Application Server Version 6 or later, a SOAP over JMS web service message 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.

[8.5.5.2 or later]

com.ibm.ws.soap.handleRST

Use this property if you want your web server to recognize when a SOAP message is completely 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 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.trns
Note: 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.

[8.5.5.2 or later]

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.

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.

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 disables 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 Avoid trouble: This property does not apply to a one-way HTTP Web service, or to two-way JMS requests.gotcha

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 an 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 additional response information, without having to immediately update your client code to process this additional information. However, when this functionality 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 http://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 be left 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 Avoid trouble: You must restart the server before this configuration setting takes affect.gotcha

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.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 102400 bytes. With this value, if an attachment exceeds 100 KBs, 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.

Note: 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.

[8.5.0.1 or later]

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.

[8.5.0.1 or later]

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.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 an 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 userid and password is applied to JMS response messages. By default, the JMS policy set basic authorization userid 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 userid and password is applied to JMS response messages. If this property is set to false, neither the userid 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.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 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.gotcha

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 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.

gotcha

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 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.gotcha
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 http://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 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
gotcha

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 1. 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 64KB 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, it's 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 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.sptcfg

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 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 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.

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 then 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 below 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.

[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, except on the Microsoft Windows operating systems, where the default is true.

[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, except on the Windows operating system where the default is true.

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 Avoid trouble: Do not assign java.util.logging.ConsoleHandler to any of the loggers because this assignment can cause an infinite loop.gotcha

[IBM i] The logging.properties file is located in the <<WAS_install>>/java/jre/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.

[8.5.0.1 or later]

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 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.gotcha

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.

[8.5.0.2 or later]

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 Avoid trouble: This JVM property must be set on every JVM in the WebSphere Application Server cell.gotcha
[8.5.0.1 or later]

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.

[8.5.0.1 or later]

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.

Note: This property modifies the cache created by property jaxws.JAXBContext.permStoreCostThresholdMsec
[8.5.0.1 or later]

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.

Note: 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 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.bprac

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.

[8.5.0.2 or later]

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.

[8.5.5.1 or later]

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.

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.

[8.5.0.2 or later]

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 words, 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.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 must be set as a custom property for the IBM WebSphere Application Server process which runs applications for which ZIP files are to be ignored.

[8.5.5.1 or later]

org.eclipse.jst.j2ee.commonarchivecore.ignore.no.interface.view

Use this property if all of the following are true:
  • You have a Java EE 5 application.
  • This application contains an EJB.
  • The EJB contains a bean without an interface
  • 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 running WebSphere Application Server Version 8.x or Version 8.5 to a node running WebSphere Application Server Version 7.x.

If all of the above conditions are true, the deployment probably fails because the application gets promoted to the Java EE 6 level during deployment. WebSphere application Server Version 7.x implements Java EE 5. In Java EE 5, a bean without an interface has no special meaning. However, in Java EE 6, a bean without an interface implements a no-interface view. When WebSphere Application Server Version 8.x or Version 8.5 processes this bean, it promotes the bean to EJB 3.1; the no-interface view was introduced in EJB 3.1. Since the application now contains an EJB at version 3.1, the application is promoted to Java EE 6. When this happens, the application cannot be deployed to a node running WebSphere Application Server Version 7.x.

To ignore the no-interface view, 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: Ignore-No-Interface-View: true.

Avoid trouble Avoid trouble: When updating the application manifest, follow line-length limitations and other constraints for the manifest.gotcha

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.

[8.5.5.2 or later]

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 running WebSphere Application Server Version 7.x.
  • The application deployment fails when you attempt to deploy from a deployment manager running WebSphere Application Server Version 8.x or Version 8.5.x to a node running WebSphere Application Server Version 7.x

If all of the above conditions are true, the deployment probably fails 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 Versions 8.x and 8.5.x implement 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. Once the application is promoted, WebSphere Application Server Versions 8.x and 8.5.x do not deploy the application to a node 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:Ignore-JEE6-Annotation: true.

Avoid trouble Avoid trouble: When updating the application manifest, follow line-length limitations and other constraints for the manifest.gotcha
[8.5.5.2 or later]

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.

Note: 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.
[8.5.0.1 or later]

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.

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.

sizeThreshold

Use this property when you want to control the algorithm for caching attachments in the JAX-WS runtime environment. When SOAP messages are processed by the JAX-WS runtime environment, the runtime environment stores small attachments in memory and stores large attachments in a file on a disk.

Use this property to specify, in kilobytes, the maximum size of an attachment that can be written to memory. If you do not specify a value for this property, the default value is 32. This default value specifies that any attachment that is less than 32 KB is stored in memory.

If the value of this property is increased, larger attachments are stored in memory. Increased values might increase the performance of the web service; however, this increased value causes the Java heap to grow. Setting the value too high might cause OutOfMemoryError errors to occur.

When determining a value for this property, remember that the larger the maximum cache size, the greater the impact on performance, and, potentially, to the Java heap. Use this property only for Java and performance tuning.

This property does not affect the logical processing of JAX-WS web services. Your JAX-WS web services will successfully process SOAP messages containing both large and small attachments, regardless of the setting of this 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 2. 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 ten 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 ten JVMs are started in parallel when the node agent starts.

Avoid trouble 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.
gotcha

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.

webservices.unify.faults

Use the webservices.unify.faults property to disable 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. Note that regardless of the property setting, checked exceptions defined in the WSDL and thrown by a service provider method implementation are not unified. Additionally, detailed information regarding the cause of the fault are logged if trace is enabled, regardless of the setting of this property.

This property and the associated behavior is new in Version 8 of the product.

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 zero (0) means that the client waits for an unlimited amount of time and will 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 zero (0) means that the client waits for an unlimited amount of time and will not timeout.

The default value is 60,000 milliseconds.

Reference topic    

Terms and conditions for information centers | Feedback

Last updated: April 18, 2014 05:01 AM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-nd-iseries&topic=xrun_jvm
File name: xrun_jvm.html