我在JSF动态导航方面遇到了一些问题。我正在使用JSF 2.2版本。我正在尝试组织动态导航
<h:commandButton value="Enter" action="loginController.result">
LoginController.java
import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean
@SessionScoped
public class LoginController implements Serializable {
private static final long serialVersionUID = 1L;
public String result(){
return "register";
}
}
它不起作用。当我尝试转到需要的页面时,它写道:“无法找到与from-view-id'/index.xhtml'匹配的导航案例,用于行动'loginController.result',结果'loginController.result'”。我试着返回“register.xhtml”,“\ register.xhtml”,“\ register”等。但它也没有用。我写的时候:
<h:commandButton value="Enter" action="register">
它正在按预期工作。 我知道让它工作的方式存在。求你帮帮我。
答案 0 :(得分:3)
您必须使用EL表达式,因此JSF将调用您的JSF bean方法:
<h:commandButton value="Enter" action="#{loginController.result}">
否则,action
属性的值将被解释为字符串文字,这就是您在使用action="register"
时看到它正常工作的原因。