JSF设置欢迎页面

时间:2013-03-18 10:51:34

标签: jsf-2

我在web.xml中有一个欢迎页面如下定义

<welcome-file-list>
    <welcome-file>templates/Template.jsf</welcome-file>
  </welcome-file-list>

,项目的上下文根是TestProject。我第一次加载项目时,url是localhost:8080 / TestProject。我在主页上有一个名为“HOME”的按钮,点击该按钮应该从任何其他页面重定向到主页。现在问题是单击此按钮,它重定向但网址变为localhost:8080 / TestProject / templates / Template.jsf。如何实现这个目标?

按钮的html代码如下:

主页

1 个答案:

答案 0 :(得分:1)

看起来你误解了<welcome-file>的含义。它不是要表示主页的URL。它旨在表示文件的唯一文件名(不包括任何物理文件夹!但允许使用虚拟后缀映射模式,如果你使用它的/faces/*),当文件夹是容器时应由容器提供已请求//foo//bar/baz/等。然后容器将检查文件夹是否包含指定的欢迎文件,然后将请求转发给它,否则显示404

我强烈建议保持简单:

<welcome-file>index.jsf</welcome-file>

并在根文件夹中有一个index.xhtml,如果需要还有其他文件夹。然后,要打开没有指定文件名的上下文根,只需使用

<a href="#{request.contextPath}/">Home</a>