我需要点击按钮从一个页面导航到另一个页面。如果我这样做的话,它会起作用
<h:commandButton value="Search" action="pageTwo.xhtml" />
但我需要做其他事情,而不仅仅是导航。当我尝试使用函数
时<h:commandButton value="Search" actionListener="#{myLittleBean.doForward}" />
public String doForward() {
// ...
return "pageTwo";
}
它只是重新加载pageOne。我的错误在哪里?
答案 0 :(得分:3)
您的错误是将动作方法引用为动作侦听器而不是实际动作。动作侦听器无意执行业务操作和执行导航。动作监听器旨在准备实际操作所需的一些条件,例如设置属性。
如果您只是修正了错误的属性,
<h:commandButton value="Search" action="#{myLittleBean.doForward}" />
然后一切都会好起来的。
答案 1 :(得分:-1)
我认为这是你的ManagedBean的问题 你也可以尝试这个:
**public String doForward() {
// ...
return ("pageTwo.xhtml");
}**
如果它不起作用,则使用显式ManagedBean