You can use the administrative console to change the values of Java™ virtual machine (JVM) custom properties.
To set custom properties, connect to the administrative console and navigate to the appropriate Java virtual machine custom properties page.
Application server | Click server_name, and then, under Server Infrastructure, click |
Deployment manager |
|
Node agent | nodeagent_name |
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.
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.
To disable this function, delete the custom property or set its value to false.
#-------------------------------------------------------------------------
# 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 <nodeName> <serverName> <enableValue>
#------------------------------------------------------------------------
proc printUsageAndExit {} {
puts " "
puts "Usage: wsadmin -f setAllowDeployer.jacl <nodeName> <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
wsadmin -f setAllowDeployer.jacl node_name server_name true
Use this custom property to enable the pruning of intermediate DOM nodes after the XML parse of the metadata occurs for an application.
The default value for this property is false.
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.
The default value for this property is false.
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.
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.
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.
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.
An error occurred while stopping Server1. Check the error logs for more information.
The default value is 5000 (5 seconds).
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.
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.
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.
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 for this property is false.
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 for this property is false.
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 for this property is false.
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 for this custom property is false.
You must set this property to true for each server and administrative server that requires a change in the default value.
The EJB container should allow for the expansion of the CMP Connection Factor 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.
To enable this functionality set this property to true. To disable, this functionality set this property to false.
The default is false.
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.
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.
Use this property to specify that you want your application recycling behavior to work the same way as this behavior worked in Version 5.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 Version 5.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.
The default value for this custom property isfalse.
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 later.
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.
Use this property to specify whether to enforce character restrictions for custom properties.
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.
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
where the server_name and node_name variables are specific to your environment.
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.
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.
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.
<partname env:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/ xsi:type='ns1:ArrayOf_xsd_string'> <item xsi:type='xsd:anySimpleType'>namevalue</item> </partname>
<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.
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.
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.
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.
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.
The default value for this custom property is 5.
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 of this property is true.
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.
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.
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 Version 7.0.0.3 or later. If the application server does not process the SAVE_CONNECTION header, you might see a 1% reduction in the throughput time.
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.
Prior to Version 7.0.0.9, if an SSL binding is attached to a JAX-WS application, JAX-WS automatically uses the system default SSL settings instead of using the SSL transport bindings.
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 for this custom property is false.
You must set this property to true for each server and administrative server that requires a change in the default value.
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 can provide fully qualified paths to multiple Java archives (JAR) and directories and separate them using a semicolon (;).
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 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.
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.
Ignore-Scanning-Archives : ant.jar, avalon-framework-4.2.0.jar, axis.jar, CICS.jar, xerces.jar
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 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.
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.
Ignore-Scanning-Packages : org.apache.avalon, org.apache.batik, org.apache.commons
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.
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.
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.
Use this property to specify which classloader the JVM should use when deserializing an InvalidationEvent. If you set this property to true, the server classloader is used to deserialize the InvalidationEvent. If you set this property to false, the application classloader is used to deserialize the InvalidationEvent. The default value is true.
Using the appropriate classloader when deserializing an InvalidationEvent helps improve performance.
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 for this property is false.
This custom property is set on the application server level only.
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 for this property is true.
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 for this property is false.
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.
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.
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 for this property is false.
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.
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.
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 for this property is false.
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 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 true.
The default value for this property is false.
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.
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, whereas on WebSphere Application Server Version 5.1 the Web services gateway sends a JmsTextMessage.
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.
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.
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
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.
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 for this property is false.
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.
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
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.
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
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 for this property is false.
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 inter-operate 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.
The default value for this custom property is false.
Use this property to specify, in kilobytes, 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 kilobytes. 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.
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.
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 information.
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.
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 for this property is true.
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, which is the default value. |
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. |
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.
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.
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.
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.
The default value for this property is false.
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 for this custom property is false.
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.
Specifies the maximum number of threads to maintain in the DRS thread pool.
The default value for this custom property is 100 threads.
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.
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.
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.
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.
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.
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.
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.
The logging.properties file is located in the <<WAS_install>>/java/jre/lib/logging.properties directory, and can be customized as needed.
The default setting for this property is false.
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.
The default value for this property is false.
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. When this property is set to true the runtime environment interprets the null value returned from the Provider implementation as a request-only operation so that no response is returned, when there is no WSDL file defined.
By default, whenever the Provider implementation returns a null value and a WSDL file is not defined, a response is sent that consists of a SOAPEnvelope that contains an empty SOAPBody element.
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 returns a response that consists of a SOAPEnvelope that contains an empty SOAPBody.
The default value for this custom property is false.
You must set this property to true for each server that requires a change in the default value.
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.
Set this property to true if you want to disable the communication between processes for the On Demand Configuration (ODC) component. If you do not use ODC, setting this property to true completely disables ODC when its not being used, which reduces network bandwidth and CPU utilization.
ODC is typically used to deploy Web services-based applications, or if a WebSphere Application Server Proxy Server is being used to handle requests. If you do not use either of these functions, the on demand configuration component is not utilized and can be disabled.
The default value is false.
If you want to disable the communication between processes for the On Demand Configuration (ODC) component, but still maintain communication for all local ODC processing, use the ODCInit.disabled custom property instead of the ODCGroup.disabled custom property.
gotchaSet 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. If you do not use ODC, setting this property to true completely disables ODC when its not being used, which reduces network bandwidth and CPU utilization.
ODC is typically used to deploy Web services-based applications, or if a WebSphere Application Server Proxy Server is being used to handle requests. If you do not use either of these functions, the on demand configuration component is not utilized and can be disabled.
The default value is false.
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.
The JVM custom property, threadpool.maxsize, is a dedicated string used to start each application server. threadpool.maxsize controls the number of application servers that are started in parallel. You add threadpool.maxsize on the Node Agent to provide thread pool size as follows:
System Administration > Node agent > nodeagent_ name > Configuration > Java and Process Management > Process Definition > Java Virtual Machine > Custom Properties > New. Then you supply the name, threadpool.maxsize and a value.
If the value you supply is greater than 0, then a threadpool is created with that value as its maximum value. For example, if the value you supply is 3, a maximum of 3 application servers will be started in parallel. If the value you supply is 0 or less than 0, then the Node Agent behaves by launching application servers sequentially.
There is no maximum value for threadpool.maxsize. The maximum threads created will be equal to the number Application Servers. You cannot configure this value.