7

我想从 JSF 页面中的链接重定向,我该怎么做?

在 HTML 中,我可以<a>为此使用标签。但是在 JSF 中,我使用<h:outputLink>或者<h:commandLink>因为它们可以有条件地呈现。我想将链接重定向到同一应用程序中的其他页面或外部 URL。我怎样才能用 JSF 做到这一点?action我该如何使用<h:commandLink>

4

1 回答 1

11

假设您要重定向到some.xhtml位于 web 根文件夹中的哪个:

  1. 您可以继续使用纯 HTML。

     <a href="#{request.contextPath}/some.xhtml">go to some page</a>
    

    对于条件渲染,只需将其包装在<ui:fragment>.


  2. <h:link>与隐式导航一起使用。

     <h:link outcome="/some" value="go to some page" />
    

    注意:无需预先添加上下文路径,也无需包含FacesServlet映射。


  3. <h:commandLink>?faces-redirect=true.

     <h:commandLink action="/some?faces-redirect=true" value="go to some page" />
    

    注意:无需预先添加上下文路径,也无需包含FacesServlet映射。


  4. 或使用<h:outputLink>,但您需要指定上下文路径。

     <h:outputLink value="#{request.contextPath}/some.xhtml" value="go to some page" />
    

重定向到外部 URL 已在此副本中得到回答:重定向到 JSF 中的外部 URL

也可以看看:

于 2010-10-16T12:57:41.163 回答