生成绝对链接有什么好处吗?

时间:2011-11-02 10:09:41

标签: jsf-2

在JSF 2.0中生成绝对链接是一种更好的方法吗?现在,我正在以{丑陋的方式使用<h:outputLink/>,如下所示#{facesContext.externalContext.requestContextPath}。我不想使用JSTL和<c:url />

<h:outputLink value="#{facesContext.externalContext.requestContextPath}/pages/home.jsf">Home</h:outputLink>

1 个答案:

答案 0 :(得分:11)

您可以将#{facesContext.externalContext.requestContextPath}缩短为#{request.contextPath}。你甚至可以摆脱它使用HTML <base> tag instead

在这种特殊情况下,最好使用<h:link>代替。它可以采用outcome属性中的上下文相关导航案例路径:

<h:link value="Home" outcome="pages/home" />

JSF将在生成FacesServlet元素时注意添加正确的上下文路径和<a>映射:

<a href="/contextname/pages/home.jsf">Home</a>

另见: