我想有条件地导航到某个页面。如果某些条件为真,我想导航到其他页面,我希望保持在同一页面上。我有类似的东西: -
<h:commandButton action="#{bean.navigate}"/>
在bean.navigate中的我有类似的东西: -
public String navigate(){
if(value <= 0)
return "helloWorld";
else
return "";
}
但是,如果我返回“”,则会抛出错误,并且在h:messages消息中附加了该页面未找到等。如何避免此错误?
答案 0 :(得分:7)
如果您想要留在同一页面,则需要返回null
。
答案 1 :(得分:3)
您需要这样的导航规则:
<navigation-rule>
<from-view-id>/firstpage.xhtml</from-view-id>
<navigation-case>
<from-outcome>helloWorld</from-outcome>
<to-view-id>/successPage.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<to-view-id>/failPage.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>