Bom dia pessoal,
Estou fazendo um sistema de abertura de chamados, porem estou com um problema no login e não estou conseguindo identificar, pois ele da o seguinte erro “javax.servlet.ServletException: /login.xhtml @23,63 value="#{loginBean.cpf}": Target Unreachable, identifier ‘loginBean’ resolved to null javax.faces.webapp.FacesServlet.service(FacesServlet.java:521)” Se alguém puder me ajudar agradeço.
Abaixo o código:
login.xhtml
[code]
<ui:composition template="/template.xhtml">
<ui:define name=“centro”>
<h:form id="formulario" action="Acesso">
<div class="acesso">
<h:panelGrid styleClass="acesso" columns="2" rendered="#{loginBean.usuarioLogado!=null}">
<h:commandButton styleClass="logout" action="#{loginBean.logout}" value="Sim" />
<h:commandButton styleClass="logout" action="#{loginBean.login}" value="Não" />
</h:panelGrid>
<h:panelGrid columns="2" rendered="#{loginBean.usuarioLogado==null}" styleClass="acesso" border="1">
<h:outputLabel styleClass="log" value="Usuario:" />
<h:inputText styleClass="log" value="#{loginBean.cpf}" />
<h:outputLabel styleClass="log" value="Senha:" />
<h:inputSecret styleClass="log" value="#{loginBean.senha}" />
</h:panelGrid>
<h:panelGrid columns="1" rendered="#{loginBean.usuarioLogado==null}"
styleClass="acesso1">
<h:commandLink>Esqueci minha senha</h:commandLink>
<h:commandButton styleClass="botaoLogar"
action="#{loginBean.login}" value="Login" />
</h:panelGrid>
</div>
</h:form>
</ui:define>
</ui:composition>
[/code]LoginBean
[code]package tccjsf.bean;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.persistence.EntityManager;
import tccjsf.dao.LoginDao;
import tccjsf.model.Tipousuario;
import tccjsf.model.Usuario;
import tccjsf.util.JPAUtil;
@ManagedBean
@SessionScoped
public class LoginBean {
private EntityManager entityManager;
private LoginDao loginDao;
private String cpf;
private String senha;
private Usuario usuarioLogado;
private Tipousuario tipoUsuario;
public LoginBean() {
this.entityManager = JPAUtil.getEntityManagerFactory().createEntityManager();
this.loginDao = new LoginDao(this.entityManager);
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
public String login(){
this.setUsuarioLogado(loginDao.getUsuario(cpf, senha));
if(usuarioLogado == null){
return "erroLogin.xhtml";
}else {
if(usuarioLogado.getTipousuario().getIdtipoUsuario() == 1){
return "telaInicialUsuario.jsf";
} else{
if(usuarioLogado.getTipousuario().getIdtipoUsuario() == 2){
return "telaInicialAtendente.jsf";
}else{
return "telaInicialAdm.jsf";
}
}
}
}
public String logout(){
this.setUsuarioLogado(null);
return null;
}
public Usuario getUsuarioLogado() {
return usuarioLogado;
}
public void setUsuarioLogado(Usuario usuarioLogado) {
this.usuarioLogado = usuarioLogado;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public Tipousuario getTipoUsuario() {
return tipoUsuario;
}
public void setTipoUsuario(Tipousuario tipoUsuario) {
this.tipoUsuario = tipoUsuario;
}
}
[/code]
Agradeço desde já.