我想找出当前页面调用的上一页。基于上一页,我想启用或禁用特定组件。在这方面,有人可以帮助我。
答案 0 :(得分:2)
取决于您的问题并不完全清楚的具体功能要求。您可以传递唯一的请求参数。例如。当它涉及GET链接时:
<h:link value="Next" outcome="next">
<f:param name="foo" value="bar" />
</h:link>
或POST链接:
<h:form>
<h:commandLink value="Next" action="next">
<f:param name="foo" value="bar" />
</h:commandLink>
</h:form>
with next.xhtml
<h:someComponent rendered="#{param.foo == 'bar'}">
...
</h:someComponent>
或者如果你不关心param的价值:
<h:someComponent rendered="#{not empty param.foo}">
...
</h:someComponent>
如果您不希望允许最终用户操作请求,那么可以更好的替代方法是在POST操作期间设置bean属性,然后返回到下一个视图:
<h:form>
<h:commandLink value="Next" action="#{bean.next}" />
</h:form>
与例如
public String next() {
foo = "bar";
return "next";
}
并在next.xhtml
<h:someComponent rendered="#{bean.foo == 'bar'}">
...
</h:someComponent>