<h:commandButton id="loginButton" value="#{msgs.loginButtonText}" action="places"/>
对于上面代码来说,不需要任何导航 XML。按钮将加载 places.xhtml,但是前提是该文件和按钮所在的文件处于同一个目录中。如果操作并没有以斜杠(/)开头,那么 JSF 认为这是一个相对路径。如果需要更加明确一点,可以指定一个绝对路径,如下所示:
使用绝对路径的导航
<h:commandButton id="loginButton" value="#{msgs.loginButtonText}" action="/pages/places"/>
当用户激活 按钮时,JSF 将加载 /pages/places.xhtml 文件。
默认情况下,JSF 将从一个 XHTML 页面转至另一个 XHTML 页面,但是通过指定 faces-redirect 参数可以重定向,如:
通过重定向进行导航
<h:commandButton id="loginButton" value="#{msgs.loginButtonText}" action="places?faces-redirect=true"/>