Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6709297
Votes 10
Synopsis Wonderland does not install via webstart with 6u10 b21 or later
Category javawebstart:other
Reported Against
Release Fixed 6u10(b27), 6u7(b06) (Bug ID:2163710)
State 11-Closed, Verified, bug
Priority: 1-Very High
Related Bugs 6595845 , 6714839
Submit Date 31-MAY-2008
Description
A senior wonderland enginer reports :
----
A couple of brave community members have tried running, via webstart, Project Wonderland (http://wonderland.dev.java.net) with JDK 6u10 and both have run into the following exception

Caused by: java.lang.SecurityException: sealing violation: can't seal package javax.media.jai.operator: already loaded
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$000(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)


This works fine under other versions of JDK 6 and JDK 5.

---

I can verify this is so starting with b21 that this webstarted app fails.
 
That build contains on;ly deployment fixes - a large number of them so
I'm not sure what the cause is.
Posted Date : 2008-05-31 00:39:36.0
Work Around
N/A
Evaluation
problem is in com.sun.deploy.cache.CachedJarFile, method getManifest().

The first call to getManifest will trigger lazy initialization of manRef, which is a SoftReference to the manifest object for the JAR.

However, after we did the initialization, we did not return the manifest, but just return null.  Therefore the first call to getManifest will return null.

In URLClassLoader.defineClass, it will see if the JAR has manifest and determine whether to definePackage with just the pkgname or with the pkgname, url and manifest.  In this case, first time manifest we got is null, so definePackage is called with pkgname only.  Next time the same package loads again, the manifest will be found, but the pkg is not sealed by definePackage, hence we get the sealing violation exception.
Posted Date : 2008-06-03 02:05:48.0
Comments
  
  Include a link with my name & email   

Submitted On 03-JUN-2008
MisterFlibble
I've also seen this in Java 6 update 6 as well as the reported Java6 update 10 beta.


Submitted On 04-JUN-2008
Miro2
Like MisterFlibble we have the same problem when using Java Web Start 1.6.0_06. The JRE doesn't matter. Since 1.6.0 is the current production release, we strongly encourage a fix in this branch, too.


Submitted On 04-JUN-2008
There are also problems with other sealed jars, for example see here:
http://forum.java.sun.com/thread.jspa?threadID=5293731&messageID=10241517

We also have this problem with Java Web Start 1.6.0_06.
It's very importatn to fix it there as well.


Submitted On 09-JUN-2008
The same problem I am facing here as well. But the very interest fact is that this occurs only in Linux, KDE, 1.6.06. But under Windows XP, 1.6.05 NOT.


Submitted On 10-JUN-2008
alok_s
We have discovered the same issue with our jws installation on jre 1.6.0_06. All older updates work fine. This is a big issue for us as lots of our customers use Java auto-update.


Submitted On 13-JUN-2008
berndk
We have observed a similar behavior - but with a different stack trace (see below). Does the bugfix also fixes this problem?

java.lang.NullPointerException
	at com.sun.javaws.security.SigningInfo.verifyAllSignedEntriesPresent(Unknown Source)
	at com.sun.javaws.security.SigningInfo.checkSigning(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
	at com.sun.javaws.Launcher.prepareLaunchFile(Unknown Source)
	at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
	at com.sun.javaws.Launcher.launch(Unknown Source)
	at com.sun.javaws.Main.launchApp(Unknown Source)
	at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
	at com.sun.javaws.Main$1.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)


Submitted On 26-AUG-2009
basic: LaunchDesc location: http://localhost:8088/Test/applet/topo.jnlp
network: Created version ID: 1.0+
network: Created version ID: 6.0
basic: JRESelectException(1): ignored - relaunched already
basic: 异常: null。
异常: null。
java.lang.NullPointerException
	at com.sun.javaws.security.SigningInfo.verifyAllSignedEntriesPresent(Unknown Source)
	at com.sun.javaws.security.SigningInfo.checkSigning(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
	at sun.plugin2.applet.JNLP2Manager.prepareLaunchFile(Unknown Source)
	at sun.plugin2.applet.JNLP2Manager.loadJarFiles(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
异常:java.lang.NullPointerException


Submitted On 26-AUG-2009
basic: LaunchDesc location: http://localhost:8088/Test/applet/topo.jnlp
network: Created version ID: 1.0+
network: Created version ID: 6.0
basic: JRESelectException(1): ignored - relaunched already
basic: 异常: null。
异常: null。
java.lang.NullPointerException
	at com.sun.javaws.security.SigningInfo.verifyAllSignedEntriesPresent(Unknown Source)
	at com.sun.javaws.security.SigningInfo.checkSigning(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
	at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
	at sun.plugin2.applet.JNLP2Manager.prepareLaunchFile(Unknown Source)
	at sun.plugin2.applet.JNLP2Manager.loadJarFiles(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
异常:java.lang.NullPointerException



PLEASE NOTE: JDK6 is formerly known as Project Mustang