United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6507009 Web Start application installed from CD will not run under Java 6u1
JDK-6507009 : Web Start application installed from CD will not run under Java 6u1

Details
Type:
Bug
Submit Date:
2006-12-21
Status:
Resolved
Updated Date:
2011-02-16
Project Name:
JDK
Resolved Date:
2007-01-18
Component:
deploy
OS:
windows_xp
Sub-Component:
webstart
CPU:
x86
Priority:
P3
Resolution:
Fixed
Affected Versions:
6
Fixed Versions:
6u1 (b03)

Related Reports
Backport:

Sub Tasks

Description
FULL PRODUCT VERSION :
java version "1.6.0_01-ea"
Java(TM) SE Runtime Environment (build 1.6.0_01-ea-b01)
Java HotSpot(TM) Client VM (build 1.6.0_01-ea-b01, mixed mode)

ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]

A DESCRIPTION OF THE PROBLEM :
I install a Web Start application using an alternative codebase - as per the Web Start FAQ - using the command:

C:\Progra~1\Java\jre1.6.0_01\bin\javaws.exe -import virtualstage/virtualstage.jnlp -codebase file:./virtualstage

The application installs correctly, appears in the Java Web Cache and an icon appears on the desktop.

However, when I try to run the program, it pops up a dialog saying:

The application has requested to go online. Do you want to continue?

If I am online, it will download the entire application. If I am offline, it will fail. The message in the console is that it cannot find the jnlp file (with the full URL). It is as though, the JNLP file imported with the alternative codebase is not recognised as being the one for the application.

This is a regression because it was working in Java 5 (1.5).

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create an application.
Install it using an alternative codebase.

Try to run it.

(I can provide files if helpful - contact me by email)

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
I would expect the program to launch successfully.
ACTUAL -
It pops up a dialog saying:

The application has requested to go online. Do you want to continue?

If I am online, it will download the entire application. If I am offline, it will fail. The message in the console is that it cannot find the jnlp file (with the full URL)

REPRODUCIBILITY :
This bug can be reproduced always.

CUSTOMER SUBMITTED WORKAROUND :
None.
Simply cannot launch the application imported in this way (unlike in 1.5)

Release Regression From : 5.0u9
The above release value was the last known release where this 
bug was not reproducible. Since then there has been a regression.

                                    

Comments
EVALUATION

i can reproduce the problem using the testcase provided.  exception stack trace:

java.net.UnknownHostException: www.dakinewave.com
	at java.net.PlainSocketImpl.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at sun.net.NetworkClient.doConnect(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.<init>(Unknown Source)
	at sun.net.www.http.HttpClient.New(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
	at com.sun.deploy.net.BasicHttpRequest.doRequest(BasicHttpRequest.java:166)
	at com.sun.deploy.net.BasicHttpRequest.doRequest(BasicHttpRequest.java:94)
	at com.sun.deploy.net.BasicHttpRequest.doGetRequest(BasicHttpRequest.java:55)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(LaunchDescFactory.java:85)
	at com.sun.javaws.LaunchDownload.getUpdatedLaunchDesc(LaunchDownload.java:184)
	at com.sun.javaws.Launcher.downloadJNLPFile(Launcher.java:1033)
	at com.sun.javaws.Launcher.prepareLaunchFile(Launcher.java:399)
	at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:165)
	at com.sun.javaws.Launcher.launch(Launcher.java:95)
	at com.sun.javaws.Main.launchApp(Main.java:299)
	at com.sun.javaws.Main.continueInSecureThread(Main.java:209)
	at com.sun.javaws.Main$1.run(Main.java:106)
	at java.lang.Thread.run(Unknown Source)
                                     
2007-01-02
EVALUATION

problem is in the cache index entry url.

when we do a -import -codebase <alt url>, we store the <alt url> as the url entry in the cache index file.

but instead, we should use the jnlp file original codebase url as the cache index url entry.

therefore when we launch the application, java web start cannot find the cached jnlp file, and try to connect to the network and download the jnlp file again.
                                     
2007-01-02
SUGGESTED FIX

http://web-east.east/deployment/www/webrevs/ngthomas/6507009/webrev/
                                     
2007-01-03



Hardware and Software, Engineered to Work Together