子文件夹中的JSF页面无法看到模板

时间:2012-04-24 21:28:31

标签: jsf-2

我在WEB-INF / templates / standardTemplate.xhtml

中有一个模板

在我的“网页”根目录中,我有一个index.xhtml,它通过

使用模板
<ui:composition template="/WEB-INF/templates/standardTemplate.xhtml">

以上工作正常。

但是我还有另一个页面使用相同的模板,但它位于子文件夹“Web Pages”/messageboard/list.xhtml

它使用完全相同的语法/路径:

<ui:composition template="/WEB-INF/templates/standardTemplate.xhtml">

但它无法找到模板并仅呈现list.xhtml的内容(没有模板的内容)。

Faces servlet映射到“/ faces / *”

我做错了什么?尝试了我能想到的每个变体,但我无法得到正确的语法。

由于

1 个答案:

答案 0 :(得分:1)

根据评论,您在HTML输出中看到<ui:composition>未解析。

这只能意味着您在浏览器地址栏中的请求网址与FacesServlet的网址格式不匹配。确保它与FacesServlet的网址格式匹配。您已将其映射到/faces/*,因此该网址应在上下文路径之后包含/faces路径前缀。

最好是直接在FacesServlet上映射*.xhtml,这样您就不需要摆弄虚拟网址。