JDK-7147569 : javaws can not read jnlp file with gzip encoding
  • Type: Bug
  • Component: deploy
  • Sub-Component: webstart
  • Affected Version: 7u4
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_7
  • CPU: x86
  • Submitted: 2012-02-21
  • Updated: 2012-02-22
  • Resolved: 2012-02-22
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
7u4Resolved
Related Reports
Duplicate :  
Description
Bug Description:

It seems there is a bug with jnlp and gzip encoding. The javaws send 
an "accept-encoding: gzip" header for the jnlp file (see below). 
If the server answer with gzip the javaws can not read it correctly (error message). 
In the java cache the jnlp file is saved as gzip. 
This problem occur on different windows systems.

The data are gzip encoded because the client send that it accept 
gzip encoding. But the data of the jnlp file will be not decoded. 
And you would see the garbage characters  of the compressed gzip.(see screenshot)

Workaround:

===========

Remove the "href" property in the "jnlp" tag of the jnlp file. 
Then javaws does not request the jnlp file.

Or modify the web sever to not send jnlp files with gzip encoding.

 

Request Header:

==============

GET /helpdesk/scripts/HelpDesk.jnlp HTTP/1.1..accept-encoding: gzip..User-Agent: JNLP/6.0_18 javaws/10.2.0.11 (<internal>) Java/1.7.0_02-ea..UA-Java-Version: 1.7.0_02-ea..Cache-Control: no-cache..Pragma: no-cache..Host: ak2..Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2..Connection: keep-alive

 

Response Header:

===============

HTTP/1.1 200 OK..Content-Type: application/x-java-jnlp-file..Last-Modified: Tue, 07 Feb 2012 07:09:34 GMT..Content-Encoding: gzip..Content-Length: 609..Server: Jetty(6.1.22)


Steps to Reproduce (be specific):


* Setup a web server with gzip encoding. for example apache, tomcat, jetty

* add a jnlp file with href property in the jnlp tag

* start this jnlp file

* You will see the error message with the compressed characters