United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-8023822 : REGRESSION:NPE exception throws when Java Web start apps fails with no logging

Details
Type:
Bug
Submit Date:
2013-08-27
Status:
Closed
Updated Date:
2014-01-20
Project Name:
JDK
Resolved Date:
2013-09-01
Component:
deploy
OS:
windows_7
Sub-Component:
webstart
CPU:
x86
Priority:
P3
Resolution:
Fixed
Affected Versions:
7u25,7u40
Fixed Versions:
7u51 (b01)

Related Reports
Backport:
Backport:
Backport:
Backport:

Sub Tasks

Description

J2SE Version (please include all output from java -version flag):
Java Web Start 10.40.2.40
Using JRE version 1.7.0_40-b40 Java HotSpot(TM) Client VM


Does this problem occur on J2SE 6ux or 7ux?  Yes / No (pick one)
Work with Java 7 update 21, fails with update 25 and later


Operating System Configuration Information (be specific):
Happens on all three laptops tested with windows vista and windows 7


Hardware Configuration Information (be specific):
Any


Bug Description:
Exception in thread "AWT-EventQueue-2" java.lang.NullPointerException
	at com.sun.jnlp.JNLPClassLoader.getPermissions(Unknown Source)
	at java.security.SecureClassLoader.getProtectionDomain(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)


Also report by someone else:
http://stackoverflow.com/questions/17230773/java-7-update-25-makes-our-java-web-start-application-fail-with-no-logging

Steps to Reproduce (be specific):

In a browser, go to: http://uploader.hivelymennonite.org/
Click on "Start the Uploader" (http://uploader.hivelymennonite.org/support/uploader.jnlp)
After the application starts, click the "Import" button.


                                    

Comments
SQE OK to defer it to 7u51.
                                     
2013-08-29
Seems appeared after changes for JDK-7127486. 

JNLPClassLoader.getJarDescFromURL(url) returns null.

+        // Get the URL this JAR file and add permissions to read all JARs
+        // that are retreived from the same host. This is to provide the
+        // same semantics as the SocketPermission gives for HTTP URLs
+        JARDesc jd = getJarDescFromURL(url);
+
+        // store jar version in app context map for use in DeployManifestChecker
+        ToolkitStore.get().getAppContext().put(Config.APPCONTEXT_KEY_PREFIX
+                + url.toString(), jd.getVersion());


                                     
2013-08-28
Defer justification: it is not 7u45 regressions (it was introduced in 7u25), so lets fix it in 7u51
                                     
2013-08-28



Hardware and Software, Engineered to Work Together