JDK-8042415 : [nightly] JNLP file invalid parsing
  • Type: Bug
  • Component: deploy
  • Sub-Component: webstart
  • Affected Version: 7u65,8u11
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2014-05-05
  • Updated: 2014-10-13
  • Resolved: 2014-05-19
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 JDK 9
7u65Fixed 8u11 b09Fixed 9Fixed
Related Reports
Relates :  
Description
In nightly build with fix for JDK-8041339

a test that tries to load a JNLP file with complicated quoting fails. Exception shown in control panel is:

	at java.lang.String.charAt(String.java:646)
	at com.sun.deploy.config.Config.containsUnsupportedCharacters(Unknown Source)
	at com.sun.deploy.config.Config.isLegalArgument(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLAttribute(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLElement(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLElement(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLElement(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLElement(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parseXMLElement(Unknown Source)
	at com.sun.deploy.xml.XMLParser.parse(Unknown Source)
	at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source)
	at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
	at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
	at com.sun.javaws.Main.launchApp(Unknown Source)
	at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
	at com.sun.javaws.Main.access$000(Unknown Source)
	at com.sun.javaws.Main$1.run(Unknown Source)
	at java.lang.Thread.run(Thread.java:745)

Comments
SQE OK to take the regression bug fix to CPU14_03 as far as there were not found related product issue during nightly testing
19-05-2014

I could not reproduce JDK-8043300 . It works for i586 and x64 buillds from specified locations (http://rehudson.us.oracle.com/nightlyws/jdk8u-cpu/b09_2014-05-14-0901_342/bundles/).
16-05-2014

UR SQE team perfromed nightly testing and found new issue that seems related to the JDK-8042415 bug fix. See https://bugs.openjdk.java.net/browse/JDK-8043300 Please, evaluate.
16-05-2014

Critical Request: - Justification : the issue could affect a number of customers which have JNLP descriptors with characters that now are considered as not valid. Without this fix it fails in hard way (application will not be launched). The fix allows application to be launched but just ensured that parameters with invalid characters are ignored. - Risk Analysis - low - Webrev - https://java.se.oracle.com/code/cru/CR-JDK9CLIENT-255 - Back ports: 7u65, 7u66, 7u71,8u11,8u25 - FX Impact - no impact
13-05-2014

We need it in 14_03. The problem here is that after JDK-8041339, in cases when non-trivial JNLP file has an element with attribute that contains not valid characters (e.g., single comma or ' ~', etc.) instead of just ignoring this attribute value the parsing of whole JNLP file fails and the application is not launched.
12-05-2014

Per https://bug.oraclecorp.com/pls/bug/webbug_print.show?c_rptno=13381437 (JDK-7083497 and JDK-8013476) we don't allow unpaired quotes. At the same time the parser should reject this argument without throwing StringOutOfBoundException.
10-05-2014