English

Problem: Tomcat stops running whenever a logoff occurs

Description

Jakarta Tomcat service stops whenever a logoff occurs.

Cause

The jk_nt_service.exe executable reacts to a bug in Java Runtime Environment (JRE) 1.3 that causes it to pay attention to events that it should not be paying attention to, such as the logoff event.

Solution or Workaround

This can be solved by using version 1.3.1_02 of the Java 2 Development Kit (JDK 1.3.1_02) instead of JDK 1.3 and by changing the last line of the wrapper.properties file in the Tomcat \conf directory to include the '-Xrs' option.

Note that if ArcIMS has been installed and configured with JDK 1.3, then it is recommended that ArcIMS be uninstalled and reinstalled after the new JDK is installed. It is generally a good idea for Tomcat and ArcIMS to use the same version of JDK.

  1. Download and install JDK 1.3.1_02 from the link in the Related Information section.
  2. Open wrapper.properties in Wordpad (it will look odd if you use Notepad) from your Tomcat's \conf directory. Usually this directory is C:\jakarta-tomcat-3.2.1\conf.
  3. Look for the line that begins with:

    Code:
    wrapper.tomcat_home=...

    You probably have already set this to another version of JRE or JDK.

    Set it to the location of JDK 1.3.1_02, which you just installed. For example:

    Code:
    wrapper.tomcat_home=C:\jdk1.3.1_02

  4. Look for the line:

    Code:
    wrapper.cmd_line=$(wrapper.javabin) -classpath $(wrapper.class_path) $(wrapper.startup_class) -config $(wrapper.server_xml) -home $(wrapper.tomcat_home)

    It will most likely be the last line in the file.

    Insert "-Xrs" before the '-classpath' option so that it looks like this:

    Code:
    wrapper.cmd_line=$(wrapper.javabin) -Xrs -classpath $(wrapper.class_path) $(wrapper.startup_class) -config $(wrapper.server_xml) -home $(wrapper.tomcat_home)

  5. Stop and restart the Jakarta service and confirm that the service does not stop when you log out.

Related Information