The Java virtual machine (JVM) is an interpretive computing engine 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 in order to run, and to support the Java applications running on it. JVM settings are part of an application server configuration.
This chapter explains how to configure the Java Virtual Machine (JVM) and other advanced settings. It contains the following sections:
As part of configuring the application server, you define settings that enhance the use of the Java Virtual machine. To change the JVM configuration using the Admin Console, select Application Server > JVM Settings tab and define the general JVM settings as follows:
Java Home: Enter the name of the installation directory of the Java software. The Application Server relies on the Java SE software.
If you enter a nonexistent directory name or the installation directory name of an unsupported version of the Java EE software, then the Application Server will not start.
Javac Options: Enter the command-line options for the Java programming language compiler. The Application Server runs the compiler when EJB components are deployed.
Debug: To set up debugging with the JPDA (Java Platform Debugger Architecture), select this Enabled checkbox.
JPDA is used by application developers.
Debug Options: Specify the JPDA options passed to the JVM when the debugging is enabled.
RMI Compile Options: Enter the command-line options for the rmic compiler. The Application Server runs the rmic compiler when EJB components are deployed.
Bytecode Preprocessor: Enter a comma separated list of class names. Each class must implement the com.sun.appserv.BytecodePreprocessor interface. The classes are called in the order specified.
Tools such as profilers may require entries in the Bytecode Preprocessor field. Profilers generate information used to analyze server performance.
To set the advanced application configuration using the Admin Console, select Application Server > Advanced tab > Application Configuration tab and set the application configuration as follows:
Reload: Select this checkbox to enable dynamic reloading of applications.
If dynamic reloading is enabled (it is by default), you do not have to redeploy an application or module when you change its code or deployment descriptors. All you have to do is copy the changed JSP or class files into the deployment directory for the application or module. The server checks for changes periodically and redeploys the application, automatically and dynamically, with the changes. This is useful in a development environment, because it allows code changes to be tested quickly. In a production environment, however, dynamic reloading might degrade performance. In addition, whenever a reload is done, the sessions at that transit time become invalid. The client must restart the session.
Reload Poll Interval: Define the interval at which applications and modules are checked for code changes and dynamically reloaded. The default is 2.
Admin Session Timeout: Specify the number of minutes of inactivity after which the admin session times out.
In addition, define the deploy settings as follows:
Auto Deploy: Select this checkbox to enable automatic deployment of applications.
Autodeployment involves copying an application or module file (JAR, WAR, RAR, or EAR) into a special directory, where it is automatically deployed by the Application Server.
Auto Deploy Poll Interval: Define the interval at which applications and modules are checked for code changes and dynamically reloaded. The default is 2.
Verifier: Check the Verifier Enabled box to verify your deployment descriptor files. This is optional.
Precompile: Check the Precompile Enabled box to precompile any JSP files.