ClassNotFoundException when loading applet on some computers
running this applet on some machines wont work but then on some other's it works just fine. in all cases looks like JRE 1.6.0_26 has been installed.
<script type="text/javascript" src="http://www.java.com/js/deployJava.js"></script>
<script>
var attributes = {codebase:'http://kash-dev/applet/',
code:'Auth.class',
archive:'Auth.jar',
id: 'auth',
width:0, height:0} ;
var version = '1.6' ;
deployJava.runApplet(attributes, null, version);
</script>
Here's the error:
load: class Auth.class not found.
java.lang.ClassNotFoundException: Auth.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.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$AppletExecuti开发者_StackOverflow社区onRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassNotFoundException: Auth.class
http://kash-dev/applet/
is not a real URL, so I'm surprised it works on any computer.width:0, height:0
Any self-respecting spam suppression software (virus checker etc.) will silently and automatically remove HTML elements with 0 size. Give it a size of 10x10 and use CSS to hide it (possibly using the display attribute, but even better by moving it to a position that is 'off the page' - e.g. by putting it at -50,-50 relative to the top-left corner of the page).
I would double check what version of Java is on each machine. The only time I have seen this kind of error - ClassNotFound on one computer but not another - is when the applet or jar is compiled by a later version of Java than the one installed e.g. trying to run a Java 7 compiled applet/jar on a machine with Java 6.
It turns out that the network proxy setting in Java control panel was set to "user proxy server" even-though the settings for it's address/port was identical to that set in the "browser settings" JVM was not able to resolve the JAR file URL correctly. Switching to "use browser setting" resolved the problem. Thank you all who responded.
精彩评论