JDK-6265713 : Having a query string to a jnlp file negates the SingleInstanceService
  • Type: Bug
  • Component: deploy
  • Sub-Component: webstart
  • Affected Version: 5.0
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2005-05-05
  • Updated: 2010-04-26
  • Resolved: 2005-05-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.
Other JDK 6
5.0u14Fixed 6 b38Fixed
Related Reports
Relates :  
Relates :  
Description
J2SE Version (please include all output from java -version flag):

  java version "1.5.0_03"
  Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_03-b07)
  Java HotSpot(TM) Client VM (build 1.5.0_03-b07, mixed mode, sharing)

Does this problem occur on J2SE 1.3, 1.4.x or 1.5?  Yes / No (pick one)
  1.5

Operating System Configuration Information (be specific):
  Windows XP

Bug Description:
  Having a query string to a jnlp file negates the SingleInstanceService.  
  This is a total show stopper for us.  We wanted to use a new link with 
  a query string to modify the current state of our running program.  
  If this does not work, we don't really have a solution to the problem 
  we are trying to solve.

Steps to Reproduce (be specific):
  * Create a webstart enabled application that implements the SingleInstanceListener
    and registers itself appropriately
  * Create a servlet to process JNLP files
	Servlet will detect a query string on the jnlp request
	If a query string is detected, it will modifiy the JNLP file
		The "href" attribute of the "jnlp" tag altered to show the query string 
		For example, 
			<jnlp 
				spec="1.0+" 
				codebase="http://k9.dev.donnell.com:8084/" 
				href="[original href]?[query string]">
  * Run the webstart program with a link that does not contain a query string.
  * While that program is still running, click on the same link again.
  * RESULT: theActivation(String[] args) method will be called in the original
    instance...SUCCESS

  * Run the webstart program again, this time from a link that does contain a 
    query string.
  * While that program is still running, click on the same link again.
  * RESULT: SingleInstanceService will be ignored and a new instance will
    start...FAILURE

  No matter what we do, having a query string nullifies the SingleInstance
  functionality
###@###.### 2005-05-05 02:30:18 GMT

Comments
SUGGESTED FIX http://web-east.east/deployment/www/webrevs/ngthomas/6265713/webrev/ ###@###.### 2005-05-05 23:55:22 GMT
05-05-2005

EVALUATION problem is we are trying to create the single instance file with "?" in the filename, which fails on windows. when generating the single instance filename from the jnlp href, we should remove the query part from the href first. fix in mustang ###@###.### 2005-05-05 23:55:21 GMT
05-05-2005