Posted by
Shawn Kendall on
May 19, 2010; 12:14am
URL: https://forum.jogamp.org/Mac-OS-Java-Update-1-6-0-20-breaks-JOGL-applets-tp827857.html
Hi all,
It seems that the latest Mac OS Java update break JOGL applets, which our product uses :-(.
On this site in fact you can see the applets no longer work if you just installed the latest release from Apple...
More than just posting the news, I will try to give some info to help with sorting this mess out :)
I will attempt to open page:
http://jogamp.org/jogl-demos/www/applettest-jnlp.htmlFirst off, when going to the applet a new (at least for Mac users) dialog pops up, the "Welcome to the Java Extension Installer". Yikes! This just about scares my users out of their pants, as before the JNLP-applet process was as clean as a Flash app, no dialog, no install, just run. OUCH.
Second, after clicking though that dialog, it say "error" in the applet due to security issues and the console has this dump:
ava.lang.reflect.InvocationTargetException
at com.sun.deploy.util.DeployAWTUtil.invokeAndWait(DeployAWTUtil.java:116)
at sun.plugin2.applet.Plugin2Manager.runOnEDT(Plugin2Manager.java:3415)
at sun.plugin2.applet.Plugin2Manager.createApplet(Plugin2Manager.java:2967)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1444)
at java.lang.Thread.run(Thread.java:637)
Caused by: java.lang.SecurityException: attempted to open sandboxed jar
http://jogamp.org/deployment/webstart/jogl.all.cdc.jar as a Trusted-Library
at com.sun.deploy.security.CPCallbackHandler$ParentElement.checkResource(CPCallbackHandler.java:354)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.checkResource(DeployURLClassPath.java:790)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.getResource(DeployURLClassPath.java:980)
at com.sun.deploy.security.DeployURLClassPath$JarLoader.getResource(DeployURLClassPath.java:896)
at com.sun.deploy.security.DeployURLClassPath.getResource(DeployURLClassPath.java:231)
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Plugin2ClassLoader.java:796)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Plugin2ClassLoader.java:785)
at sun.plugin2.applet.JNLP2ClassLoader.findClass(JNLP2ClassLoader.java:317)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at sun.plugin2.applet.Plugin2Manager$12.run(Plugin2Manager.java:2955)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Exception: java.lang.reflect.InvocationTargetException
3) After going into Java Preferences, setting "Run Applets: In their own process" and under ADVANCED tab setting security to "Disable - insecure, not recommended" and rerunning, we now get this:
VALIDATE: libjogl_cg.jnilib
java.io.IOException: Cannot validate certificate for libjogl_cg.jnilib
at org.jdesktop.applet.util.JNLPAppletLauncher.validateCertificates(JNLPAppletLauncher.java:1815)
at org.jdesktop.applet.util.JNLPAppletLauncher.processNativeJar(JNLPAppletLauncher.java:1579)
at org.jdesktop.applet.util.JNLPAppletLauncher.initResources(JNLPAppletLauncher.java:1350)
at org.jdesktop.applet.util.JNLPAppletLauncher.initAndStartApplet(JNLPAppletLauncher.java:1254)
at org.jdesktop.applet.util.JNLPAppletLauncher.access$000(JNLPAppletLauncher.java:658)
at org.jdesktop.applet.util.JNLPAppletLauncher$1.run(JNLPAppletLauncher.java:907)
May 18, 2010 8:10:31 PM org.jdesktop.applet.util.JNLPAppletLauncher displayError
SEVERE: java.io.IOException: Cannot validate certificate for libjogl_cg.jnilib
I hope you can reproduce this, and I hope this is the right place to post this kind of thing!
Thanks for any help.
Shawn Kendall
IMILabs