[英]Class Not found exception in JApplet
我使用JApplet创建了一个简单的Applet,看起来一切正常,但是一旦我在applet中创建了一个名为ChatUser的用户定义类的对象,就会收到此错误:-
SEVERE: java.lang.ClassNotFoundException: applet.ChatUser
at com.sun.enterprise.loader.ASURLClassLoader.findClassData(ASURLClassLoader.java:713)
at com.sun.enterprise.loader.ASURLClassLoader.findClass(ASURLClassLoader.java:626)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at misc.ChatClient.run(ChatClient.java:43)
知道有什么问题吗? 仅当我创建任何用户定义类的对象时,才会发生这种情况。 我需要设置一些安全设置还是其他? 请帮忙 :(
这只是意味着小程序的运行时类路径中缺少提到的类。
您确实意识到applet在与Web服务器运行所在的环境完全不同的环境(即客户端计算机)上运行吗? 客户端将需要首先下载所需的库。 该类应该包含在applet的主JAR文件中,或者包含在applet的archive
参数中引用的任何库中。 您可以指定多个以逗号分隔的JAR。
<param name="archive" value="applet.jar,library1.jar,library2.jar">
这指示客户端在运行小程序之前先下载哪个JAR。
启动小程序的方式看起来像是类路径问题。
如果使用NetBeans运行文件启动小程序,则Netbeans可能会将项目类路径作为小程序的类路径,而不是您在小程序的HTML页面中指定的类路径。 如您所见,类加载器是com.sun.enterprise.loader.ASURLClassLoader,它不是Applets使用的标准类加载器(URLClassLoader)。 使用浏览器或appletviewer或jnlp(Java webstart)运行applet。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.