JDK-6810893 : JVM args always mismatch on Vista
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 6u10
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: windows_vista
  • CPU: x86
  • Submitted: 2009-02-27
  • Updated: 2010-09-08
  • Resolved: 2009-05-13
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6
6u14 b04Fixed
Related Reports
Relates :  
Description
On Windows Vista, a JNLP applet is always "relaunched" due to mismatch JVM arguments although the applet didn't specify any new JVM arguments.

The "relaunch" has a side-effect of performing the following steps twice in the java plugin code which may have an impact on startup performance:
handleMessageStartApplet
StartAppletRunner
Plugin2Manager.start
AppletExecutionRunnable

Comments
SUGGESTED FIX http://sa.sfbay.sun.com/projects/deployment_data/6u14/6810893.0
06-03-2009

EVALUATION On windows Vista, the jvm arguments are being passed via the "-Dsun.plugin2.jvm.args" system property from the server side to the jp2launcher which launches the java.exe. During JVMParameters.parseFromSystemProperty, the following arguments are being added as trusted arguments although they should really be considered as internal. -D__jvm_launched=12576220371 -Djava.class.path=D:\progra~1\java\jre6\classes When searching for a jvm to launch the applet, the match always fails due to the presence of the above arguments and causing the client to send a message to the server to relaunch the applet. A fix is to add another separator argument ("---") to separate the internal and trusted argument in additional to the existing separator argument ("--") which separates the trusted and other arguments. In parseFromSystemPropertyImpl, we don't add the internal ones to the args.
27-02-2009