Boa noite, gente.
Estou precisando de ajuda com um erro que estou tendo na aplicação que estou desenvolvendo… Parece algum problema com o EJB, mas não sei exatamente do que se trata.
javax.servlet.ServletException: Um erro ocorreu ao realizar a injeção de recurso no bean gerenciado guiLogin
root cause
com.sun.faces.mgbean.ManagedBeanCreationException: Um erro ocorreu ao realizar a injeção de recurso no bean gerenciado guiLogin
root cause
com.sun.faces.spi.InjectionProviderException: com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Remote ejb-ref name=gui.GuiLogin/usuarioDAO,Remote 3.x interface =dao.UsuarioDAO,ejb-link=null,lookup=,mappedName=,jndi-name=dao.UsuarioDAO,refType=Session into class gui.GuiLogin: Lookup failed for 'java:comp/env/gui.GuiLogin/usuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
root cause
com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Remote ejb-ref name=gui.GuiLogin/usuarioDAO,Remote 3.x interface =dao.UsuarioDAO,ejb-link=null,lookup=,mappedName=,jndi-name=dao.UsuarioDAO,refType=Session into class gui.GuiLogin: Lookup failed for 'java:comp/env/gui.GuiLogin/usuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
root cause
javax.naming.NamingException: Lookup failed for 'java:comp/env/gui.GuiLogin/usuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NamingException: Exception resolving Ejb for 'Remote ejb-ref name=gui.GuiLogin/usuarioDAO,Remote 3.x interface =dao.UsuarioDAO,ejb-link=null,lookup=,mappedName=,jndi-name=dao.UsuarioDAO,refType=Session' . Actual (possibly internal) Remote JNDI name used for lookup is 'dao.UsuarioDAO#dao.UsuarioDAO' [Root exception is javax.naming.NamingException: Lookup failed for 'dao.UsuarioDAO#dao.UsuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: dao.UsuarioDAO#dao.UsuarioDAO not found]]]
root cause
javax.naming.NamingException: Exception resolving Ejb for 'Remote ejb-ref name=gui.GuiLogin/usuarioDAO,Remote 3.x interface =dao.UsuarioDAO,ejb-link=null,lookup=,mappedName=,jndi-name=dao.UsuarioDAO,refType=Session' . Actual (possibly internal) Remote JNDI name used for lookup is 'dao.UsuarioDAO#dao.UsuarioDAO' [Root exception is javax.naming.NamingException: Lookup failed for 'dao.UsuarioDAO#dao.UsuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: dao.UsuarioDAO#dao.UsuarioDAO not found]]
root cause
javax.naming.NamingException: Lookup failed for 'dao.UsuarioDAO#dao.UsuarioDAO' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: dao.UsuarioDAO#dao.UsuarioDAO not found]
root cause
javax.naming.NameNotFoundException: dao.UsuarioDAO#dao.UsuarioDAO not found
public interface InterfaceDAO {
public void incluir(Object objeto) throws Exception;
public void alterar(Object objeto) throws Exception;
public void excluir(Object objeto) throws Exception;
public List listar() throws Exception;
}
@Stateless
public class UsuarioDAO implements InterfaceDAO{
@PersistenceContext
private EntityManager em;
@Override
public void incluir(Object objeto) throws Exception {
Usuario usuario = (Usuario) objeto;
em.persist(usuario);
}
}
@ManagedBean
public class GuiLogin {
@EJB
private UsuarioDAO usuarioDAO;
}