我一直在搜索本论坛的所有部分,仍然没有得到关于我的问题的答案。
我的问题是如何包含位于不同文件夹中的JSF模板。这是我的文件夹结构和文件列表。
/WEB-INF
login.xhtml
/template
-----layout.xhtml
/home
-----homefile.xhtml
-----/user
----------userfile.xhtml
我尝试做的是使用homefile.xhtml
和userfile.xhtml
下的/ template文件夹下的模板。我已经尝试了以下代码
<ui:composition template="template/layout.xhtml">
</ui:compostion>
但它不起作用。我收到了“无法找到资源”模板/ layout.xhtml“&gt;的错误。
如果我在login.xhtml
中使用该代码,它的工作正常。
知道怎么做吗?
其中一个解决方案是在主文件夹中创建另一个/template/layout.xhtml
,但我认为它不是最佳解决方案。
答案 0 :(得分:1)
在模板位置前面添加斜杠,如下所示:
<ui:composition template="/template/layout.xhtml">
</ui:compostion>
这应该有效。位置template/layout.xhtml
相对于“当前文件夹”,这意味着JSF将尝试加载/home/template/layout.xhtml
。