Pessoal, estou usando JSF2, nesta minha primeira aplicação e tenho um método de validação de usuário que já direciona para a view da aplicação quando o usuário e senha estão OK.
O detalhe é que não consegui identificar como se faz para colocar na navegação, implícita no MB, quando a view está em uma pastas diferentes no contexto.
Ex: tenho uma pasta app/sistema.xhtml com as views da aplicação e deixei a de login em outra pasta chamada usuario/login.xhtml. O método é o seguinte:
public String validaUsuario() {
FacesContext context = FacesContext.getCurrentInstance();
Usuarios user = null;
try {
user = usuarioDAO.findByLogin(getLogin());
if (user != null) {
if (!user.getSenha().trim().equals(senha.trim())) {
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,"Falha no Login!","Senha inválida.");
context.addMessage(null, message);
return null;
}else{
return "sistema";
}
} else {
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,"Falha no Login!","Username '"+ login+ "' does not exist.");
context.addMessage(null, message);
return null;
}
} catch (Exception e) {
context.addMessage(null, new FacesMessage("Erro ao listar usuários: " + e.getMessage()));
e.printStackTrace(System.out);
return null;
}
}
Na linha 13 esta o retorno do página a seguir, porém só funciona se estiver na mesma pasta.
Já tentei “…/app/sistema”, “app/sistema”, etc…
Há alguma configuração específica a ser feita?
Não achei no google algo que me ajudasse.
Agradeço desde já.