This problem seems only to affect Vista and all browsers (IE,FF,Chrome)
Customers are complaining they updated JRE to 1.6.0_15 and jfileupload doesn't load anymore.
Console says in Chrome:
Code: Select all
Java Plug-in 1.6.0_15
Using JRE version 1.6.0_15-b03 Java HotSpot(TM) Client VM
load: class jfileupload.upload.client.JSMApplet.class not found.
java.lang.ClassNotFoundException: jfileupload.upload.client.JSMApplet.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: open HTTP connection failed:http://<XXXXX>/_cms/jfileupload/upload/client/JSMApplet/class.class
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 7 more
Exception: java.lang.ClassNotFoundException: jfileupload.upload.client.JSMApplet.class
Code: Select all
java.lang.NoClassDefFoundError: jfileupload/upload/client/MApplet
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.defineClassHelper(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.access$400(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: jfileupload.upload.client.MApplet
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
... 20 more
Caused by: java.io.IOException: open HTTP connection failed:http://<XXXXX>/_cms/scripts/jfileupload/jfileupload/upload/client/MApplet.class
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 24 more
Exception: java.lang.NoClassDefFoundError: jfileupload/upload/client/MApplet
Mine is http://<XXXX>.nl/_cms/scripts/jfileupload, console says /_cms/jfileupload
And why does it say MApplet in IE/FF en JSMApplet in Chrome?
My applet.js says:
Code: Select all
document.write('type="application/x-java-applet;version=1.4" ');
document.write('CODE="jfileupload.upload.client.JSMApplet.class" ');
document.write('JAVA_CODEBASE="/_cms/scripts/jfileupload/" ');
document.write('ARCHIVE="lib/jfileupload.jar,lib/httpimpl.jar,lib/chttpclient.jar,lib/clogging.jar,lib/previewui.jar,lib/jsapi.jar');
document.write('NAME="fileupload" ');
(...)
document.writeln('<PARAM NAME=CODE VALUE="jfileupload.upload.client.JSMApplet.class">');
document.writeln('<PARAM NAME=CODEBASE VALUE="/_cms/scripts/jfileupload/">');
document.writeln('<PARAM NAME=ARCHIVE VALUE="lib/jfileupload.jar,lib/httpimpl.jar,lib/chttpclient.jar,lib/clogging.jar,lib/previewui.jar,lib/jsapi.jar">');
document.writeln('<PARAM NAME=NAME VALUE="fileupload">');