Java 6u12 class verification change
We have an applet that was working fine in 6u11 and an earlier 6u12 build, but has the following problem with the 6u12 release:
Once the applet is dragged out and creates a desktop shortcut you cannot launch the applet from the shortcut any more - it fails with the following exception:
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.sun.javaws.Launcher.executeApplet(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Between Java 6u11 and Java6u12 the WebStart launcher has changed and now seems to be verifying that all classes referenced by the main class, whether via an import statement or an explicit inline reference, are available.
We can change our applet relatively easily in this instance, but it does have wider implications on class dependency verification. I did wonder whether it was related to this bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6764974
Does anyone have any more information on whether this is a deliberate change or an accidental regression?