2013-08-07 67 views
0

我一直在搜索这个论坛的所有部分,但仍然没有得到有关我的问题的答案。如何将JSF模板包含在不同的文件夹中

我的问题是如何包含位于不同文件夹中的JSF模板。这是我的文件夹结构和文件列表。

/WEB-INF 
login.xhtml 
/template 
-----layout.xhtml 
/home 
-----homefile.xhtml 
-----/user 
----------userfile.xhtml 

什么即时试图做的是使用在/模板文件夹模板上homefile.xhtmluserfile.xhtml。我已经试过下面的代码

<ui:composition template="template/layout.xhtml"> 
</ui:compostion> 

但它不工作。我得到错误“无法找到资源‘模板/ layout.xhtml’>。 如果我使用该代码在login.xhtml其工作的罚款。

任何想法,该怎么办呢? 其中一个解决方案是再拍/template/layout.xhtml主文件夹里面,但我认为它不是最好的解决

回答

1

在模板中的位置的前面添加一个斜杠是这样的:

<ui:composition template="/template/layout.xhtml"> 
</ui:compostion> 

这应该工作地点template/layout.xhtml是相对于“当前。文件夹“,这将意味着JSF将尝试加载/home/template/layout.xhtml

+2

但是,OP最好将模板文件放在WEB-INF文件夹中,以防止直接访问最终用户。 – skuntsel

相关问题