JDK-6715420 : j4b revisions are not recognized as "platform versions"
  • Type: Bug
  • Component: deploy
  • Sub-Component: webstart
  • Affected Version: 5.0,6,6u17-rev
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic,windows,windows_vista
  • CPU: generic,x86
  • Submitted: 2008-06-17
  • Updated: 2015-04-24
  • Resolved: 2009-08-19
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.
Other JDK 6 JDK 7
1.4.2_25Fixed 6u18 b01Fixed 7Fixed
Related Reports
Duplicate :  
Duplicate :  
Relates :  
Relates :  
Description
FULL PRODUCT VERSION :
jre1.5.0_15, jre1.6.0_03 and jre1.6.0_05

ADDITIONAL OS VERSION INFORMATION :
Windows Vista Pro

A DESCRIPTION OF THE PROBLEM :
javaws should not try a download of the JRE taking into account that at least 3 JDK/JRE versions are matching the requirement on the host (jdk1.6.0_03,jre1.6.0_03 and jre1.6.0_05)

Invoking javaws from IE link works properly and no JRE download is trigered.

Invoking javaws from the desktop icon (installed by the jnlp <shortcut>) fails trying to download a JRE (why for?)


STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Start any web start java application based on a JNLP similar to the one in section "Source code for an executable test case".

Once invoked/installed first from a web browser (IE), restarts the application using the desktop icon newly created.


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Javaws should NOT try to download a new JRE.  At least 3 JDK/JRE available on the host (jre1.5.0_15, jre1.6.0_03 and jre1.6.0_05) are matching the jnlp requirement <j2se version="1.6.0+">

ACTUAL -
Javaws tries to download of JRE (which normaly fails under VISTA) when launching the application using a shortcut icon created based on JNLP content

NOTE:
Launching the application from the Web browser always works properly.

ERROR MESSAGES/STACK TRACES THAT OCCUR :
JNLPException[category: Configuration syst��me : Exception: null : LaunchDesc:
<jnlp spec="1.5+" codebase="http://duysens-vista/D2002/download/resources/MRTMS/">
  <information>
    <title>MRTMS Graphical User Interface</title>
    <vendor>EVA Corporate Ltd</vendor>
    <homepage href="http://duysens2002.ath.cx/"/>
    <description>MRTMS Graphical User Interface</description>
    <icon href="http://duysens-vista/D2002/download/resources/MRTMS/images/GUI64.gif" kind="default"/>
    <shortcut online="true">
      <desktop/>
      <menu submenu="D2002"/>
    </shortcut>
    <offline-allowed/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <update check="timeout" policy="always"/>
  <resources>
    <java version="1.6+"/>
    <jar href="http://duysens-vista/D2002/download/resources/MRTMS/jar/GUI.jar" download="eager" main="false"/>
    <jar href="http://duysens-vista/D2002/download/resources/MRTMS/jar/UMA.jar" download="eager" main="false"/>
  </resources>
  <application-desc main-class="com.eva.uma.gui.explorer.InstanceManager"/>
</jnlp> ]
	at com.sun.javaws.Launcher.downloadJREResource(Unknown Source)
	at com.sun.javaws.Launcher.prepareLaunchFile(Unknown Source)
	at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
	at com.sun.javaws.Launcher.launch(Unknown Source)
	at com.sun.javaws.Main.launchApp(Unknown Source)
	at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
	at com.sun.javaws.Main$1.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)


REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------
<jnlp
  spec="1.0+"
  codebase="http://duysens-vista/D2002/download/resources/SDMU/">

  <information>
    <title>MRTMS SDMU</title>
    <vendor>D2002</vendor>
    <homepage href="http://duysens2002.ath.cx/" />
    <description>MRTMS Speed And Measurement Unit</description>
    <icon href="images/SDMU.jpg"/>
    <offline-allowed/>
    <shortcut>
      <desktop/>
      <menu submenu="D2002"/>
    </shortcut>
  </information>

  <security>
    <all-permissions/>
  </security>


  <resources>
    <j2se version="1.6.0+">
    <jar href="jar/SDMU.jar"/>
  </resources>


  <application-desc main-class="com.d2002.mrtms.sdmu.InstanceManager" />
</jnlp>

---------- END SOURCE ----------

CUSTOMER SUBMITTED WORKAROUND :
In fact the shortcuts created by javaws based on JNLP content target the following file "C:/Windows/System32/javaws.exe"  and not "C:\Program Files\Java\jre1.6.0_05\bin\javaws.exe" even if the JVM system property java.home returns " C:\Program Files\Java\jre1.6.0_05"

"C:/Windows/System32/javaws.exe" version is 1.6.0_05.

Workaround 1:
Delete "C:/Windows/System32/javaws.exe" and then javaws will use "C:\Program Files\Java\jre1.6.0_05\bin\javaws.exe" as target for the shortcuts

Workaround 2:
Renaming "C:/Windows/System32/javaws.exe"  in "C:/Windows/System32/javaws2.exe"  and changing accordingly the shortcut target solves also the issues. This one is VERY SURPRISING !!!
Moreover on next creation of short cut "C:\Program Files\Java\jre1.6.0_05\bin\javaws.exe" will be used.
New Description of the underlying problem:
J4B revisions are not recognized as platfrorm versions because they contain a hyphen in the full version id, which the previously existing version docs said implied a pre-fcs version.  When in fact these are post fcs versions.

Comments
EVALUATION I will modify the code in JreMatch in configurationFile.c and in DefaultMatchJRE.java to allow platform match if hypen is followed by "rev" or "er" -rev, and -er builds are both post-fcs not pre-fcs like -ea, -beta, -rc etx.
04-08-2009

EVALUATION I cannot reproduce this problem as described by the submitter, contacting the submitter for more info
05-01-2009