JDK-7121240 : webstart does not work when jnlp file is gzip compressed
  • Type: Bug
  • Component: deploy
  • Sub-Component: deployment_toolkit
  • Affected Version: 7,7u4
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: windows,windows_7
  • CPU: generic,x86
  • Submitted: 2011-12-14
  • Updated: 2012-02-22
  • Resolved: 2012-01-25
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 7 JDK 8
7u4 b07Fixed 8Fixed
Related Reports
Duplicate :  
Description
this can be used to reproduce the bug.

Go to http://media.rallydev.com/stratus/Stratus.html and click "Launch Stratus"

6uX works fine.  7 or above won't work.

Java Web Start 10.2.0.13
Using JRE version 1.7.0_02-b13 Java HotSpot(TM) Client VM
User home directory = C:\Users\ngthomas
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
basic: Java part started
basic: jnlpx.jvm: C:\Program Files\Java\jre7\bin\javaw.exe
basic: jnlpx.splashport: 50436
basic: jnlpx.remove: true
basic: jnlpx.heapsize: 512m,768m
network: Loading user-defined proxy configuration ...
network: Done.
network: Browser is null
network: Browser is IE
network: Loading proxy configuration from Internet Explorer ...
network: Done.
network: Loading direct proxy configuration ...
network: Done.
network: Proxy Configuration: No proxy
security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.
security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws
security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws
security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy
security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy
security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp
security: property package.definition value null
security: property package.definition new value com.sun.javaws
security: property package.definition value com.sun.javaws
security: property package.definition new value com.sun.javaws,com.sun.deploy
security: property package.definition value com.sun.javaws,com.sun.deploy
security: property package.definition new value com.sun.javaws,com.sun.deploy,com.sun.jnlp
security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp
security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp,org.mozilla.jss
security: property package.definition value com.sun.javaws,com.sun.deploy,com.sun.jnlp
security: property package.definition new value com.sun.javaws,com.sun.deploy,com.sun.jnlp,org.mozilla.jss
basic: Running JVMParams: [JVMParameters: isSecure: true, args: -Djnlp.packEnabled=true -Djnlp.versionEnabled=true -Xmx768m -Xms512m]
    -> [JVMParameters: isSecure: true, args: -Djnlp.packEnabled=true -Djnlp.versionEnabled=true -Xmx768m -Xms512m]
network: Created version ID: 1.7.0.02
network: Created version ID: 1.7
temp: new XMLParser with source:
temp: <?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://media.rallydev.com/stratus" href="Stratus-no-shortcut.jnlp">
    <information>
        <title>Stratus</title>
        <vendor>Rally Software Development Corp</vendor>
        <homepage href="http://media.rallydev.com/stratus/Stratus.html"/>
        <description>Agile Strategic Planning Tool</description>
        <offline-allowed/>
        <icon href="images/rally-reg-128.png" width="128" height="128"/>
    </information>
    <security>
        <all-permissions/>
    </security>
    <resources>
        <j2se version="1.5+" initial-heap-size="512m" max-heap-size="768m"/>
        <property name="jnlp.packEnabled" value="true"/>
        <property name="jnlp.versionEnabled" value="true"/>
        <extension name="JavaFX Runtime" href="http://dl.javafx.com/1.3/javafx-rt.jnlp"/>
        <jar href="Stratus.jar" main="true"/>
        <jar href="lib/commons-discovery-0.2.jar"/>
        <jar href="lib/commons-logging-1.0.4.jar"/>
        <jar href="lib/jaxrpc.jar"/>
        <jar href="lib/log4j-1.2.8.jar"/>
        <jar href="lib/saaj.jar"/>
        <jar href="lib/swing-worker-1.2.jar"/>
        <jar href="lib/jfxtras-common.jar"/>
        <jar href="lib/jfxtras-controls.jar"/>
        <jar href="lib/js.jar"/>
        <jar href="lib/cobra.jar"/>
    </resources>
    <application-desc main-class="com.sun.javafx.runtime.main.Main">
        <argument>MainJavaFXScript=org.apropos.Main</argument>
    </application-desc>
    <update check="always"/>
</jnlp>


temp:

returning ROOT as follows:

<jnlp spec="1.0+" codebase="http://media.rallydev.com/stratus" href="Stratus-no-shortcut.jnlp">
  <information>
    <title>Stratus</title>
    <vendor>Rally Software Development Corp</vendor>
    <homepage href="http://media.rallydev.com/stratus/Stratus.html"/>
    <description>Agile Strategic Planning Tool</description>
    <offline-allowed/>
    <icon href="images/rally-reg-128.png" width="128" height="128"/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <resources>
    <j2se version="1.5+" initial-heap-size="512m" max-heap-size="768m"/>
    <property name="jnlp.packEnabled" value="true"/>
    <property name="jnlp.versionEnabled" value="true"/>
    <extension name="JavaFX Runtime" href="http://dl.javafx.com/1.3/javafx-rt.jnlp"/>
    <jar href="Stratus.jar" main="true"/>
    <jar href="lib/commons-discovery-0.2.jar"/>
    <jar href="lib/commons-logging-1.0.4.jar"/>
    <jar href="lib/jaxrpc.jar"/>
    <jar href="lib/log4j-1.2.8.jar"/>
    <jar href="lib/saaj.jar"/>
    <jar href="lib/swing-worker-1.2.jar"/>
    <jar href="lib/jfxtras-common.jar"/>
    <jar href="lib/jfxtras-controls.jar"/>
    <jar href="lib/js.jar"/>
    <jar href="lib/cobra.jar"/>
  </resources>
  <application-desc main-class="com.sun.javafx.runtime.main.Main">
    <argument>MainJavaFXScript=org.apropos.Main</argument>
  </application-desc>
  <update check="always"/>
</jnlp>
temp: returning LaunchDesc from XMLFormat.parse():

<jnlp spec="1.0+" codebase="http://media.rallydev.com/stratus/" href="http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp">
  <information>
    <title>Stratus</title>
    <vendor>Rally Software Development Corp</vendor>
    <homepage href="http://media.rallydev.com/stratus/Stratus.html"/>
    <description>Agile Strategic Planning Tool</description>
    <icon href="http://media.rallydev.com/stratus/images/rally-reg-128.png" height="128" width="128" kind="default"/>
    <offline-allowed/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <update check="always" policy="always"/>
  <resources>
    <java initial-heap-size="536870912" max-heap-size="805306368" version="1.5+"/>
    <extension href="http://dl.javafx.com/1.3/javafx-rt.jnlp" name="JavaFX Runtime"/>
    <jar href="http://media.rallydev.com/stratus/Stratus.jar" download="eager" main="true"/>
    <jar href="http://media.rallydev.com/stratus/lib/commons-discovery-0.2.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/commons-logging-1.0.4.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jaxrpc.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/log4j-1.2.8.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/saaj.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/swing-worker-1.2.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jfxtras-common.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jfxtras-controls.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/js.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/cobra.jar" download="eager" main="false"/>
  </resources>
  <application-desc main-class="com.sun.javafx.runtime.main.Main">
    <argument>MainJavaFXScript=org.apropos.Main</argument>
  </application-desc>
</jnlp>
basic: new Launcher:
<jnlp spec="1.0+" codebase="http://media.rallydev.com/stratus/" href="http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp">
  <information>
    <title>Stratus</title>
    <vendor>Rally Software Development Corp</vendor>
    <homepage href="http://media.rallydev.com/stratus/Stratus.html"/>
    <description>Agile Strategic Planning Tool</description>
    <icon href="http://media.rallydev.com/stratus/images/rally-reg-128.png" height="128" width="128" kind="default"/>
    <offline-allowed/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <update check="always" policy="always"/>
  <resources>
    <java initial-heap-size="536870912" max-heap-size="805306368" version="1.5+"/>
    <extension href="http://dl.javafx.com/1.3/javafx-rt.jnlp" name="JavaFX Runtime"/>
    <jar href="http://media.rallydev.com/stratus/Stratus.jar" download="eager" main="true"/>
    <jar href="http://media.rallydev.com/stratus/lib/commons-discovery-0.2.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/commons-logging-1.0.4.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jaxrpc.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/log4j-1.2.8.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/saaj.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/swing-worker-1.2.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jfxtras-common.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/jfxtras-controls.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/js.jar" download="eager" main="false"/>
    <jar href="http://media.rallydev.com/stratus/lib/cobra.jar" download="eager" main="false"/>
  </resources>
  <application-desc main-class="com.sun.javafx.runtime.main.Main">
    <argument>MainJavaFXScript=org.apropos.Main</argument>
  </application-desc>
</jnlp>
server running at port: 50334
temp: connect to: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp 50334
network: Connecting socket://127.0.0.1:50334 with proxy=DIRECT
temp: no server is running - continue launch!
network: prepareToLaunch: offlineOnly=false
network: Cache entry not found [url: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp, version: null]
cache: Cannot get resource from cache: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp
network: Cache entry not found [url: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp, version: null]
network: Cache entry not found [url: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp, version: null]
network: Connecting http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp with proxy=DIRECT
network: Connecting socket://media.rallydev.com:80 with proxy=DIRECT
network: ResponseCode for http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp : 200
network: Encoding for http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp : gzip
network: Sever response: (length: 650, lastModified: Wed Oct 19 13:22:41 PDT 2011, downloadVersion: null, mimeType: application/x-java-jnlp-file)
network: Downloading resource: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp
    Content-Length: 650
    Content-Encoding: gzip
network: Wrote URL http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp to File C:\Users\ngthomas\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\21\71135c15-32acd1cc-temp
network: Disconnect connection to http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp
network: Cache: Enable a new CacheEntry: http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp
network: Downloaded http://media.rallydev.com/stratus/Stratus-no-shortcut.jnlp: C:\Users\ngthomas\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\21\71135c15-32acd1cc
temp: new XMLParser with source:
temp: ��

Comments
EVALUATION See MR
17-01-2012

EVALUATION Fixed in 8 with webrev: http://sa.sfbay.sun.com/mail-archive/7121240-deployment/
23-12-2011

EVALUATION We need to cover JNLP descriptor downloading code with DownloadEngine.setInternalUse() so the caching download would be stored unzipped.
14-12-2011

EVALUATION same problem can be reproduced using old javafx 1.3 jnlp files: javaws -import http://dl.javafx.com/1.3/javafx-rt.jnlp Java Web Start 10.2.0.13 Using JRE version 1.7.0_02-b13 Java HotSpot(TM) Client VM User home directory = C:\Users\ngthomas ---------------------------------------------------- c: clear console window f: finalize objects on finalization queue g: garbage collect h: display this help message m: print memory usage o: trigger logging p: reload proxy configuration q: hide console r: reload policy configuration s: dump system and deployment properties t: dump thread list v: dump thread stack 0-5: set trace level to <n> ---------------------------------------------------- basic: Java part started basic: jnlpx.jvm: C:\Program Files\Java\jre7\bin\javaw.exe basic: jnlpx.splashport: 50617 basic: jnlpx.remove: false basic: jnlpx.heapsize: null network: Loading user-defined proxy configuration ... network: Done. network: Browser is null network: Browser is IE network: Loading proxy configuration from Internet Explorer ... network: Done. network: Loading direct proxy configuration ... network: Done. network: Proxy Configuration: No proxy security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio. security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp security: property package.definition value null security: property package.definition new value com.sun.javaws security: property package.definition value com.sun.javaws security: property package.definition new value com.sun.javaws,com.sun.deploy security: property package.definition value com.sun.javaws,com.sun.deploy security: property package.definition new value com.sun.javaws,com.sun.deploy,com.sun.jnlp security: property package.access value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp security: property package.access new value sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.javaws,com.sun.deploy,com.sun.jnlp,org.mozilla.jss security: property package.definition value com.sun.javaws,com.sun.deploy,com.sun.jnlp security: property package.definition new value com.sun.javaws,com.sun.deploy,com.sun.jnlp,org.mozilla.jss basic: Running JVMParams: [JVMParameters: isSecure: true, args: -Xmx64m] -> [JVMParameters: isSecure: true, args: ] network: Created version ID: 1.7.0.02 network: Created version ID: 1.7 network: Cache entry not found [url: http://dl.javafx.com/1.3/javafx-rt.jnlp, version: null] network: Cache entry not found [url: http://dl.javafx.com/1.3/javafx-rt.jnlp, version: null] network: Connecting http://dl.javafx.com/1.3/javafx-rt.jnlp with proxy=DIRECT network: Connecting socket://dl.javafx.com:80 with proxy=DIRECT network: Connecting http://dl.javafx.com/1.3/javafx-rt.jnlp with cookie "JFXINFO_Installed=1.3.1" network: Server http://dl.javafx.com/1.3/javafx-rt.jnlp requesting to set-cookie with "JFXINFO_PluginType=NewJavaPlugin; Path=/" network: ResponseCode for http://dl.javafx.com/1.3/javafx-rt.jnlp : 200 network: Encoding for http://dl.javafx.com/1.3/javafx-rt.jnlp : gzip network: Sever response: (length: 686, lastModified: Thu Jul 15 11:34:16 PDT 2010, downloadVersion: null, mimeType: application/x-java-jnlp-file) network: Downloading resource: http://dl.javafx.com/1.3/javafx-rt.jnlp Content-Length: 686 Content-Encoding: gzip network: Wrote URL http://dl.javafx.com/1.3/javafx-rt.jnlp to File C:\Users\ngthomas\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\26\457dee9a-42dc2d08-temp network: Disconnect connection to http://dl.javafx.com/1.3/javafx-rt.jnlp network: Cache: Enable a new CacheEntry: http://dl.javafx.com/1.3/javafx-rt.jnlp network: Downloaded http://dl.javafx.com/1.3/javafx-rt.jnlp: C:\Users\ngthomas\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\26\457dee9a-42dc2d08 temp: new XMLParser with source: temp: ��
14-12-2011