Configuring the JVM

As part of configuring an application server, you might define settings that enhance the way your operating system uses of the Java™ virtual machine (JVM).

About this task

The JVM is an interpretive computing engine that is responsible for running the byte codes in a compiled Java program. The JVM translates the Java byte codes into the native instructions of the host machine. The application server, being a Java process, requires a JVM to run and to support the Java applications running on it. JVM settings are part of an application server configuration.

To view and change the JVM configuration for an application server process, use the Java virtual machine page of the administrative console or use wsadmin scripts to change the configuration.

Note: IBM SDK and Runtime Environment Java Technology Edition, Version 7, which is provided with WebSphere Application Server, enables you to take advantage of the Intel Advance Encryption Standard (AES) Instruction Set when performing AES Cryptography. This Instruction Set allows for improved performance when using AES Ciphers in SSL. AES is a symmetric block cipher that encrypts and decrypts data through several rounds. The enablement of this function has resulted in performance improvements in WebSphere Application Server SSL processing. To enable this function, add the JVM option -Dcom.ibm.crypto.provider.doAESInHardware to the Generic JVM arguments setting for your JVM, and set this option to true. See the IBM SDK and Runtime Environment for AIX, Java Technology Edition, Version 7 documentation for more information about AES.
[AIX]Avoid trouble: When a child process starts, Java appends the runtime path to the LIBPATH environment variable to ensure that it is using the correct library paths. Because this implementation does not check to see if the runtime path already exists in the LIBPATH environment variable, existing entries might be duplicated. However, when the parent process restarts, all of the runtime paths that were added to the LIBPATH environment variable when child processes started are removed from the LIBPATH environment variable.

Procedure

  1. In the administrative console, click Servers > Server Types > WebSphere application servers > server_name.
  2. Under Server Infrastructure, click Java and process management > Process definition.
  3. [z/OS] Select Control, Servant, or Adjunct.
    Note: Select the Control, Servant, or Adjunct region according to where you intend to set the JVM property.
  4. Select Java virtual machine.
  5. Specify values for the JVM settings as needed, and click OK.
    For more information, see the documentation about Java virtual machine settings.
    Note: Java 5.0 SR10 and Java 6 SR5 correct issues in which the Java virtual machine (JVM) does not shut down correctly. If you have an application that depends on the previous behavior, which is not correct, you can revert to the previous behavior by adding the -XXallowvmshutdown:false argument to the Generic JVM arguments section.
  6. Click Save in the messages section of the administrative console panel to save the changes to the master configuration.
  7. Restart the application server.

Example

Configuring application servers for UCS Transformation Format provides an example that involves specifying a value for the Generic JVM Arguments property on the Java virtual machine page to enable UTF-8 encoding on an application server. Enabling UTF-8 allows multiple language encoding support to be used in the administrative console.

Configuring JVM sendRedirect calls to use context root provides an example that involves defining a property for the JVM.