iManager Users: Here's a Fix for Sun's JVM 1.3
Novell Cool Solutions: Trench
By David Gersic
Digg This -
Posted: 29 Apr 2003
On the Windows OS, Sun's JVM v1.3 or newer (currently 1.4.1_02, distributed as j2re-1_4_1_02-windows-i586.exe), Java.exe installs a console command process that will intercept any interactive (desktop) logout events and will self terminate. This was not true with JVM 1.2.2.
This is documented, with complaints, in Sun's bug database at:
It's also documented in the readme that comes with Tomcat 3.3 as installed by iManager 1.5. See the file:
- C:\Program Files\Novell\Tomcat\doc\NT-Service-howto.html
The effect on iManager 1.5, via Tomcat 3.3, is entertaining. If you log in to the desktop, and use Control Panel -> Services -> Jakarta -> Start to start the Tomcat service, it will start and will work fine until you log out from the desktop. That terminates Java.exe, and iManager no longer works.
With JVM 1.3.1 and newer, Sun added an optional command line parameter, -Xrs, for Java.exe to fix this behaviour. The documentation says to modify whatever is calling Java.exe to pass this parameter to it, then Java.exe will no longer self-terminate when a user logs out of the Windows desktop.
For Tomcat, this can be done by editing the wrapper.properties file (C:\Program Files\Novell\Tomcat\conf\jk\wrapper.properties). Find the line that starts with "wrapper.cmd_line" and change it from:
wrapper.cmd_line=$(wrapper.javabin) -Xrs -Djava.library.path=...
Then go to Control Panel -> Services -> Jakarta and stop the service, then start it again. That puts the change in to effect, and now you can log out of the Windows desktop without killing iManager.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com