通过Glassfish服务器访问嵌入小程序的Facelets页面时,出现此错误。
尽管当我仅从计算机上打开它时,它就可以正常工作,所以小程序还可以。
是否可以在Glassfish(3.1,JSF 2.0)上运行小程序?
这是我尝试的方法:
<applet code="test.TestApplet" archive="TestApplet.jar"/>
最佳答案
这是ClassFormatError
的典型消息。有效的Java类的魔术值是0xCAFEBABE
,这是前4个字节。但是您会得到0x3C3F786D
,它代表ASCII字符<?xm
。
因此,对TestApplet.jar
的请求显然已经返回了XML文档。在浏览器地址栏中将当前请求URI更改为指向TestApplet.jar
文件(即,将URL末尾的/page.jsf
或/page.xhtml
更改为/TestApplet.jar
)时,您应该能够自己看到它。然后,您将看到浏览器尝试下载小程序时实际检索到的内容。也许这是Facelets提供的简单HTTP 404错误文档。
要解决此问题,只需确保archive
属性中的URL是正确的。如您在浏览器地址栏中看到的,它是相对于当前请求URL的。