1

这是我的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 一起使用。

我想在开发过程中使用爆炸部署,因为测试更改要快得多。

谢谢您的帮助。

4

0 回答 0