我正在尝试在我的JSF2 facelets webapplication中使用mvc。
这是我的logincontroller:
@ManagedBean
@ApplicationScoped
public class LoginControllerImpl implements LoginController{
@ManagedProperty(value = "#{applicationBean}")
private ApplicationBean applicationBean;
@Override
public boolean checkLogin(String username, String password) {
Store store = applicationBean.getStore(); //my model and my data are in this object
try {
store.checkLogin(username, password);
return true;
} catch (LoginException ex) {
return false;
}
}
}
这是我的loginBean:
@ManagedBean
@SessionScoped
public class LoginBean implements Serializable{
@ManagedProperty(value="#{loginController}")
private LoginController loginController;
private String username;
private String password;
public void checkLogin(){
loginController.checkLogin(username, password);
}
}
现在我想在checklogin为true时将用户重定向到欢迎页面。任何想法/提示我应该怎么做?
答案 0 :(得分:2)
您可以使用implicit navigation
,只返回您要访问的页面(相对于当前网址)
@ManagedBean
@SessionScoped
public class LoginBean implements Serializable{
@ManagedProperty(value="#{loginController}")
private LoginController loginController;
private String username;
private String password;
public String checkLogin(){
if (loginController.checkLogin(username, password)) {
return "welcome.xhtml";
}
return null; // won't change page
}
}