繁体   English   中英

JApplet中的类未找到异常

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM