这让我感觉很不舒服。我已检查并重新检查拼写和路径。我尝试了几乎所有路径组合,包括相对路径,绝对路径和完整http路径。我不断收到以下错误尝试加载Java小程序时:Java Applet部署,ClassNotFoundException(主类)
java.lang.ClassNotFoundException: AppletClient.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)
Exception: java.lang.ClassNotFoundException: AppletClient.class
的HTML用来加载小程序:
<applet width="100" height="100" archive="applet/myapplet.jar, applet/applet_dependency.jar" code="AppletClient.class">
<param value="blahblah" name="username">
<param value="false" name="codebase_lookup">
</applet>
小应用程序是在一个相对目录,“小程序”,从当前页面的路径。我已经解压缩了jar文件并可以看到AppletClient.class。另外,在项目来源中,拼写方式(大小写和全部)。我试过/不带参数。我已经更改了applet include标签中的存档jar的名称,以查看是否针对错误的文件名(同一错误)获取了不同的错误。
我已经手工完成大干快上的罐子,以确保服务器响应请求(它是)。
我曾尝试与不代码库标签,所有不同品种的路径(开始于那些越来越坏“幻数”的错误)。
我知道,当一个依赖加载失败这个错误有时会弹出,因此它可能会产生误导,但所有的依赖关系都存在,占了,并且是可提取通过手动的GET。
在每次尝试之间,我总是在FireFox中清除缓存。这些问题也在IE8和Chrome中重现。
按我的Java控制台从浏览器,我运行Java插件1.6.0_20。这来自我开发applet的相同机器,它通过Eclipse运行良好。
最后,我踢Fiddler2,我没有看到的jar文件的任何地方的主机站点是从我的Visual Studio调试器中运行单个请求,所以它在本地主机上运行。但是我看到了对提琴手所有其他资源的请求。只是...没有罐子。任何地方。我清除了日志,清除了我的浏览器缓存,并执行了ctrl-R刷新。而且,对于Fiddler日志不是单个Jar请求。
我甚至在页面加载后的小程序标签的写入延迟(与JS),一旦所有的提琴手活动放缓。元素被写入文档(并且我可以看到100x100 Java错误窗口),但不会在提琴手上显示单个请求。
有什么建议,在我爬到角落哭泣自己睡觉之前?
编辑:从Java控制台,如果我打“L”(EL)“倾销类加载器列表”,我看到的东西,看起来像这样:
Live entry: key=http://localhost:55446/BaseWebSite/,http://localhost:55446/BaseWebSite/applet/myappliet.jar, http://localhost:55446/BaseWebSite/applet/applet_dependency.jar, refCount=1, threadGroup=sun.plugin2.applet.Applet2ThreadGroup[name=http://localhost:55446/BaseWebSite/-threadGroup,maxpri=4]
编辑2:小程序做了一些网络(Jabber/XMPP),所以我做了一个自签名证书,看看是否有帮助。获得关于自签名证书的提示 - 因此它正在读取某些内容 - 但仍然无效。这是而不是显示在Java缓存文件列表中......并且仍然没有在Fiddler上。
我清除了Java缓存(很好的提示!),但仍然没有运气,仍然没有活动的瓶子的提琴手。不,AppletClient不在类路径中。 – Matt 2010-06-10 13:17:39
我的意思是不,AppletClient不在包中。它没有软件包,位于存档中列出的第一个jar的根目录。 – Matt 2010-06-10 14:52:19
谢谢Lauri的帮助。在我的结尾仍然没有运气:(我用自签名证书签署了代码,因为它有一些想要签名的网络代码,我得到关于自签名证书的提示,所以它看到了很多,但仍然无法加载 – Matt 2010-06-11 18:16:08