您好我正在尝试使用oracle jdeveloper 12c 开发一个登录页面。我正在使用 Java EE 技术和 JSF 页面。 我想在验证数据库中是否存在用户后,从登录按钮重定向页面如果发现用户将其重定向到MainPage.Jsf,则重定向到Login.jsf两种情况下都会重定向到Login.jsf的问题。 PS:我没有在faces-config或adfc-config中进行任何更改这是我的身份验证功能
public String authentification(String login, String pwd) {
try{
Query query;
query = em.createQuery("select o from UserEntity o where " + " o.login = :LOGIN AND o.pwd = :PWD");
query.setParameter("LOGIN",login);
query.setParameter("PWD",pwd);
query.getSingleResult();
return ("success") ;
}
catch(Exception e){
e.printStackTrace();
return null;
}
}
我确定验证功能正常运行
这是我在managedBean中的Dologin()
public String DoLogin() {
BindingContainer bindings = getBindings();
OperationBinding operationBinding = bindings.getOperationBinding("authentification");
Object result = operationBinding.execute();
System.out.println("## Result = " + result);
if (!operationBinding.getErrors().isEmpty()) {
return "/faces/MainPage.jsf?faces-redirect=true";
}
return "/faces/Login.jsf?faces-redirect=true";
}
日志没有显示任何例外或错误
答案 0 :(得分:0)
试用此代码
ExternalContext ectx = FacesContext.getCurrentInstance().getExternalContext();
HttpServletResponse response = (HttpServletResponse)ectx.getResponse();
response.sendRedirect("../faces/login.jspx");