当我通过Glassfish服务器访问嵌入了applet的Facelets页面时,我收到此错误。 虽然当我只是从我的电脑打开它时工作正常,所以小程序是可以的。 是否可以在Glassfish(3.1,JSF 2.0)上运行applet?
这是我的尝试方式:
<applet code="test.TestApplet" archive="TestApplet.jar"/>
答案 0 :(得分:7)
这是ClassFormatError
的典型信息。有效Java类的神奇值是0xCAFEBABE
,这是前4个字节。但是你得到0x3C3F786D
代表ASCII字符<?xm
。
因此,对TestApplet.jar
的请求显然实际返回了一个XML文档。当您将浏览器地址栏中的当前请求URI更改为指向TestApplet.jar
文件(即将URL中的/page.jsf
或/page.xhtml
更改为{{1}时,您应该可以自己查看}})。然后,当您尝试下载applet时,您将看到实际检索到的内容。也许这是Facelets提供的一个简单的HTTP 404错误文档。
要解决此问题,请确保/TestApplet.jar
属性中的网址正确无误。它与您在浏览器地址栏中看到的当前请求URL相关。
答案 1 :(得分:-1)
最后我找到了解决方案:
如果我将applet的jar文件放入我的Web应用程序的resources文件夹中,并将存档文件的路径设置为以下
<applet code="test.TestApplet" archive="../resources/TestApplet.jar"/>
它工作正常。