JDK-6389251 : REGRESSION: Webstart fails to load Carousel Components Demo Application
  • Type: Bug
  • Component: deploy
  • Sub-Component: webstart
  • Affected Version: 6
  • Priority: P2
  • Status: Closed
  • Resolution: Not an Issue
  • OS: generic
  • CPU: generic
  • Submitted: 2006-02-22
  • Updated: 2010-08-18
  • Resolved: 2006-02-24
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
6Resolved
Description
A DESCRIPTION OF THE REGRESSION :
The Carousel Components Demo Application fails to load using Mustang-b72 webstart. It loads and runs fine using 5.0u6 webstart. It 's a regression in Mustang.
 
The JNLP references a php file, while the href in the JNLP file references a jnlp file:

http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.php
http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp

Etheral traces confirm that the php version is loaded, and then the jnlp version is attempted in both tiger (5.0) and mustang (6.0)  The difference is that tiger continues to load and mustang reports an exception that it cannot find the 404 file.

Note that the offile-allowed element IS present.


REPRODUCIBLE TESTCASE OR STEPS TO REPRODUCE:
Use the command line to access the jnlp file

<path to JDK>\bin\javaws.exe http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.php



RELEASE LAST WORKED:
5.0 Update 6

RELEASE TEST FAILS:
mustang-b70/b72

Tested on win 2000 pro(sp4)/solaris-sparc9 (gnome2)

EXPECTED VERSUS ACTUAL BEHAVIOR :

EXPECTED:
The demo application should load and run.  This is because the offline-allowed element is present in /jnlp/information

ACTUAL:
Java Webstart throws "Unable to lauch the application" exception and the demo fails to load.


********************************************************************************
Launch file tab:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp
  spec="1.0+"
  codebase="http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart"
  href="CarouselComponents_ip.jnlp">
  <information>
    <title>Carousel Components Demo Application</title>
    <vendor>Xoetrope Ltd.</vendor>
    <homepage href="http://www.xoetrope.com/carousel"/>
    <description>A demo for the Carousel Swing components</description>
    <description kind="short">A demo for the Carousel Swing components</description>
    <icon kind="splash" href="splash.jpg"/>
    <offline-allowed/>
  </information>
  <security>
      <all-permissions/>
  </security>
  <resources>
    <j2se version="1.5+"/>
    <jar href="../../../../lib/xui1.5/XuiCoreSwing.jar"/>
    <jar href="../../../../lib/xui1.5/XuiOptional.jar"/>
    <jar href="../../../../lib/thirdparty/hsqldb.jar"/>
    <jar href="../../../../lib/thirdparty/custom.jar"/>
    <jar href="../../../../lib/xui1.5/CarouselSwingComponents.jar"/>
    <jar href="CarouselComponents.jar"/>
    <nativelib href="../../../../lib/thirdparty/jmfdlls.jar"/>
  </resources>
  <application-desc main-class="net.xoetrope.swing.XApplet"/>
</jnlp>

Exception tab
-------------
com.sun.deploy.net.FailedDownloadException: Unable to load resource: http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp
	at com.sun.deploy.net.DownloadEngine.actionDownload(DownloadEngine.java:926)
	at com.sun.deploy.net.DownloadEngine.getCacheEntry(DownloadEngine.java:1024)
	at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(DownloadEngine.java:1099)
	at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(DownloadEngine.java:1033)
	at com.sun.deploy.net.DownloadEngine.getResource(DownloadEngine.java:141)
	at com.sun.deploy.net.DownloadEngine.getResource(DownloadEngine.java:126)
	at com.sun.javaws.LaunchDownload.getUpdatedLaunchDesc(LaunchDownload.java:166)
	at com.sun.javaws.Launcher.downloadJNLPFile(Launcher.java:1004)
	at com.sun.javaws.Launcher.prepareLaunchFile(Launcher.java:386)
	at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:164)
	at com.sun.javaws.Launcher.launch(Launcher.java:94)
	at com.sun.javaws.Main.launchApp(Main.java:294)
	at com.sun.javaws.Main.continueInSecureThread(Main.java:204)
	at com.sun.javaws.Main$1.run(Main.java:105)
	at java.lang.Thread.run(Thread.java:626)


Wrapped Exception Tab:
---------------------
java.io.FileNotFoundException: http://xoetrope.com/404.php
	at sun.reflect.GeneratedConstructorAccessor2.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:506)
	at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1267)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1261)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:923)
	at com.sun.deploy.net.BasicHttpRequest.doRequest(BasicHttpRequest.java:206)
	at com.sun.deploy.net.BasicHttpRequest.doRequest(BasicHttpRequest.java:94)
	at com.sun.deploy.net.BasicHttpRequest.doGetRequest(BasicHttpRequest.java:59)
	at com.sun.deploy.net.DownloadEngine.actionDownload(DownloadEngine.java:756)
	at com.sun.deploy.net.DownloadEngine.getCacheEntry(DownloadEngine.java:1024)
	at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(DownloadEngine.java:1099)
	at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(DownloadEngine.java:1033)
	at com.sun.deploy.net.DownloadEngine.getResource(DownloadEngine.java:141)
	at com.sun.deploy.net.DownloadEngine.getResource(DownloadEngine.java:126)
	at com.sun.javaws.LaunchDownload.getUpdatedLaunchDesc(LaunchDownload.java:166)
	at com.sun.javaws.Launcher.downloadJNLPFile(Launcher.java:1004)
	at com.sun.javaws.Launcher.prepareLaunchFile(Launcher.java:386)
	at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:164)
	at com.sun.javaws.Launcher.launch(Launcher.java:94)
	at com.sun.javaws.Main.launchApp(Main.java:294)
	at com.sun.javaws.Main.continueInSecureThread(Main.java:204)
	at com.sun.javaws.Main$1.run(Main.java:105)
	at java.lang.Thread.run(Thread.java:626)
Caused by: java.io.FileNotFoundException: http://xoetrope.com/404.php
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1212)
	at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:367)
	at com.sun.deploy.net.BasicHttpRequest.doRequest(BasicHttpRequest.java:171)
	... 17 more


Console tab:
-----------
Java Web Start 1.6.0-rc
Using JRE version 1.6.0-rc Java HotSpot(TM) Client VM
User home directory = C:\Documents and Settings\danno.ferrin
----------------------------------------------------
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>
----------------------------------------------------
#### Java Web Start Error:
#### Unable to load resource: http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp




APPLICATION NAME: Carolsel Components 	APPLICATION VERSION: Demo

OBSERVED APPLICATION IMPACT:
App won't run

Release Regression From : mustang
The above release value was the last known release where this 
bug was known to work. Since then there has been a regression.

Comments
EVALUATION This is not a bug in mustang java web start. When you do "javaws http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.php", we will go download the url and read in as the jnlp contents. If there is an href in the jnlp file, (in this case, http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp), we will then contact the href again, and use that as the jnlp file. however, http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp is a invalid url and returns 404, so java web start will not launch the application, because it cannot download the jnlp file. the href in the jnlp file must be valid; or the href should not be specified. in tiger it works because we store the contents of http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.php as a cache entry for http://www.xoetrope.com/zone/articles/files/carouselcomponents/webstart/CarouselComponents_ip.jnlp, which is not correct. I will try to contact xoetrope.com and ask them to fix the jnlp file.
24-02-2006