自定义导航处理程序 - 不由h:link调用的handleNavigation

时间:2012-10-21 20:52:46

标签: jsf navigation

我的自定义导航处理程序中的句柄导航方法handleNavigation(final FacesContext context, final String fromAction, final String outcome)不是由我的h:link组件调用的?

<h:link value="text" outcome="./target.xhtml?faces-redirect=true">
    <f:param name="param" value="#{var.prop}"/>
</h:link>

使用commandbutton调用它。

1 个答案:

答案 0 :(得分:0)

<h:link>之后不会发送POST请求,目标网址已被解析。相反,<h:link>生成一个HTML <a>元素,其中目标网址已经在href属性中,而该属性又用于发送GET请求。此网址由ViewHandler#getBookmarkableURL()获取,后者又委托给ViewHandler#getActionURL()

如果你正在使用Mojarra,你可以看到OutcomeTargetLinkRenderer#renderAsActive()中的所有工作。

您可以通过展开ViewHandlerWrapper并将其注册为ViewHandler轻松提供自定义<application><view-handler>

相关问题