oi, sou novato no jsf e hibernate e estou com uma duvida,
queria saber como faço para chamar um dado do banco num h:outputText,
ex: tenho uma tela de login que quando faço o login ele consulta se esse usuario existe no banco,
se existir ele se loga e entra numa pagina principal, eu queria que quando o usuario se logasse,
na tela principal tivesse essa mensagem BEM VINDO: usuario, tenho uma classe:
Login
com usuario e senha, na minha pagina principal tem:
bem vindo: <h:outputText value="#{loginBean.login.usuario}"/>
mais quando eu faço o login no sistema entra na pagina principal e não aparece nada,
só o bem vindo:
não aparece o nome do usuaio logado!
será q tenho que chamar dentro de uma tabela? como resolvo esse problema!
no meu faces-config.xml etá assim:
loginBean
br.com.bean.Login
session
OBRIGADO!!!
nao sei se é a melhor maneira, mas dentro do managed bean pode usar
[code]HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
HttpSession session = request.getSession();
session.setAttribute("user", login.usuario);
[/code]
na pagina jsf
#{user}
Aqui o meu bean:
public class RegistrarBean {
private static final long serialVersionUID = -333995781063775201L;
private Long id;
private Registrar registrar = new Registrar();
private Registrar logarUsuario = new Registrar();
public RegistrarBean() {
System.out.println(" >>>>>>>>>>>>>>>>>>>> Construtor do REGISTRAR <<<<<<<<<<<<<<<<<<");
if(this.registrar == null){
this.registrar = new Registrar();
}
}
//get e set
metodo para se logar:
public String logar() throws Exception{
boolean logado = false;
HttpSession session = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false);
HttpServletResponse rp = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
HttpServletRequest rq = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
RegistrarInterfaceBasica logarUsuarioService = new RegistrarImpl();
logado = logarUsuarioService.autentica(this.logarUsuario.getUsuario(), this.logarUsuario.getSenha());
if(logado){
session.setAttribute("user", logado);
rp.sendRedirect(rq.getContextPath() + "/entrada.jsf");
return "success";
}else{
session.setAttribute("user", null);
session.removeAttribute("user");
rp.sendRedirect(rq.getContextPath() + "/principal.jsf");
return "failure";
}
}