这是我的Facelet 模板位置:WAR/WEB-INF/lib/common.jar/META-INF/resources/m0/template.xhtml。
当战争和其中的 jar 被部署为爆炸文件夹时,
它会引发以下异常:无效路径:/m0/template.xhtml
当战争和 jar 被部署为真实档案时,它会起作用,或者当它们被
分解时EAR,但不是简单的 WAR。
附加信息 :
- Windows 和 Linux 上的问题是一样的。
- 该问题仅发生在展开的 WAR 中,其中 common.jar 是 WEB-INF/lib 下的展开文件夹。
- 在 common.jar 是 EAR/lib 下的文件夹的分解 EAR 中不会出现此问题。
我在这里读到facelets 模板由 ExternalContext#getResource() 解析,它委托给 ServletContext#getResource() 从 /WEB-INF/lib/*.jar!/META-INF/resources 加载资源。它只适用于真正的罐子吗?或者我应该尝试另一个 servlet API 实现吗?我将 Glassfish 3.1.2 与 Mojarra 2.1.6 一起使用。
我想在开发过程中使用爆炸部署,因为测试更改要快得多。
谢谢您的帮助。