Erro com EJB[Resolvido]

10 respostas
Polverini

Pessoal está aparecendo o seguinte erro quando subo a aplicação:

Grave: Error Rendering View[/controle/usuario.xhtml]
java.lang.IllegalStateException: Exceção ao tentar injetar Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session em class com.ask.intranet.controller.UsuarioController: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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}
	at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:137)
	at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget$1.work(ManagedBean.java:157)
	at org.jboss.weld.bean.ManagedBean$FixInjectionPoint.run(ManagedBean.java:131)
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget.inject(ManagedBean.java:153)
	at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:290)
	at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:61)
	at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:616)
	at org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:127)
	at org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:96)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
	at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:103)
	at com.sun.el.parser.AstValue.getValue(AstValue.java:179)
	at com.sun.el.parser.AstEmpty.getValue(AstEmpty.java:66)
	at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:224)
	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
	at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:413)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:50)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:45)
	at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:185)
	at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:108)
	at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:55)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
	at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:57)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:45)
	at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:51)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:288)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
	at com.ask.intranet.seguranca.SecurityFilter.doFilter(SecurityFilter.java:25)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
Caused by: com.sun.enterprise.container.common.spi.util.InjectionException: Exceção ao tentar injetar Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session em class com.ask.intranet.controller.UsuarioController: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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}
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:703)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:470)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectInstance(InjectionManagerImpl.java:171)
	at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:130)
	... 73 more
Caused by: javax.naming.NamingException: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session' .  Actual (possibly internal) Remote JNDI name used for lookup is 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao' [Root exception is javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]]]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:599)
	... 76 more
Caused by: javax.naming.NamingException: Exception resolving Ejb for 'Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session' .  Actual (possibly internal) Remote JNDI name used for lookup is 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao' [Root exception is javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]]
	at com.sun.ejb.EjbNamingReferenceManagerImpl.resolveEjbReference(EjbNamingReferenceManagerImpl.java:191)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$EjbReferenceProxy.create(ComponentEnvManagerImpl.java:1109)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:776)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:744)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:169)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:498)
	... 80 more
Caused by: javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at com.sun.ejb.EjbNamingReferenceManagerImpl.resolveEjbReference(EjbNamingReferenceManagerImpl.java:186)
	... 85 more
Caused by: javax.naming.NameNotFoundException: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found
	at com.sun.enterprise.naming.impl.TransientContext.doLookup(TransientContext.java:248)
	at com.sun.enterprise.naming.impl.TransientContext.lookup(TransientContext.java:215)
	at com.sun.enterprise.naming.impl.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:77)
	at com.sun.enterprise.naming.impl.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:119)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:505)
	... 89 more

Bean

@Named
@SessionScoped
public class UsuarioController implements Serializable {

    private static final long serialVersionUID = -1345141290188096948L;
    @Inject
    private Usuario usuario;
    @EJB
    protected UsuarioDao dao;
    private List<Usuario> usuarios;

    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public List<Usuario> getUsuarios() {
        return usuarios;
    }

    public void setUsuarios(List<Usuario> usuarios) {
        this.usuarios = usuarios;
    }

    public void salvar() {
        if (usuario != null) {
            dao.salvar(usuario);
            return;
        }
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Usuario nulo!"));
    }
}

DAO

@Stateless
public class UsuarioDao extends GenericDaoImpl<Usuario> {
    
    @PersistenceContext
    private EntityManager em;
    
    public UsuarioDao() {
        super(Usuario.class);
        super.setEm(em);
    }
}

Estou usando JSF 2.0 com Primefaces 3.2 e glassfish 3.1.2, tambem uso o datasource do glassfish que configurei pelo Netbeans

Se alguem puder ajudar!!!

Vlw

10 Respostas

Polverini

alguem ?

maior_abandonado

Polverini:
Pessoal está aparecendo o seguinte erro quando subo a aplicação:

Grave: Error Rendering View[/controle/usuario.xhtml]
java.lang.IllegalStateException: Exceção ao tentar injetar Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session em class com.ask.intranet.controller.UsuarioController: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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}
	at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:137)
	at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget$1.work(ManagedBean.java:157)
	at org.jboss.weld.bean.ManagedBean$FixInjectionPoint.run(ManagedBean.java:131)
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget.inject(ManagedBean.java:153)
	at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:290)
	at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:61)
	at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:616)
	at org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:127)
	at org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:96)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
	at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:103)
	at com.sun.el.parser.AstValue.getValue(AstValue.java:179)
	at com.sun.el.parser.AstEmpty.getValue(AstEmpty.java:66)
	at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:224)
	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
	at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:413)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:50)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:45)
	at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:185)
	at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:108)
	at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:55)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
	at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:57)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:45)
	at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:51)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:288)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
	at com.ask.intranet.seguranca.SecurityFilter.doFilter(SecurityFilter.java:25)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
Caused by: com.sun.enterprise.container.common.spi.util.InjectionException: Exceção ao tentar injetar Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session em class com.ask.intranet.controller.UsuarioController: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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}
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:703)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:470)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectInstance(InjectionManagerImpl.java:171)
	at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:130)
	... 73 more
Caused by: javax.naming.NamingException: Lookup failed for 'java:comp/env/com.ask.intranet.controller.UsuarioController/dao' 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=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session' .  Actual (possibly internal) Remote JNDI name used for lookup is 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao' [Root exception is javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]]]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:599)
	... 76 more
Caused by: javax.naming.NamingException: Exception resolving Ejb for 'Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,ejb-link=null,lookup=,mappedName=,jndi-name=com.ask.intranet.dao.UsuarioDao,refType=Session' .  Actual (possibly internal) Remote JNDI name used for lookup is 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao' [Root exception is javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]]
	at com.sun.ejb.EjbNamingReferenceManagerImpl.resolveEjbReference(EjbNamingReferenceManagerImpl.java:191)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$EjbReferenceProxy.create(ComponentEnvManagerImpl.java:1109)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:776)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:744)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:169)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:498)
	... 80 more
Caused by: javax.naming.NamingException: Lookup failed for 'com.ask.intranet.dao.UsuarioDao#com.ask.intranet.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: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at javax.naming.InitialContext.lookup(InitialContext.java:411)
	at com.sun.ejb.EjbNamingReferenceManagerImpl.resolveEjbReference(EjbNamingReferenceManagerImpl.java:186)
	... 85 more
Caused by: javax.naming.NameNotFoundException: com.ask.intranet.dao.UsuarioDao#com.ask.intranet.dao.UsuarioDao not found
	at com.sun.enterprise.naming.impl.TransientContext.doLookup(TransientContext.java:248)
	at com.sun.enterprise.naming.impl.TransientContext.lookup(TransientContext.java:215)
	at com.sun.enterprise.naming.impl.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:77)
	at com.sun.enterprise.naming.impl.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:119)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:505)
	... 89 more

Bean

@Named
@SessionScoped
public class UsuarioController implements Serializable {

    private static final long serialVersionUID = -1345141290188096948L;
    @Inject
    private Usuario usuario;
    @EJB
    protected UsuarioDao dao;
    private List<Usuario> usuarios;

    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public List<Usuario> getUsuarios() {
        return usuarios;
    }

    public void setUsuarios(List<Usuario> usuarios) {
        this.usuarios = usuarios;
    }

    public void salvar() {
        if (usuario != null) {
            dao.salvar(usuario);
            return;
        }
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Usuario nulo!"));
    }
}

DAO

@Stateless
public class UsuarioDao extends GenericDaoImpl<Usuario> {
    
    @PersistenceContext
    private EntityManager em;
    
    public UsuarioDao() {
        super(Usuario.class);
        super.setEm(em);
    }
}

Estou usando JSF 2.0 com Primefaces 3.2 e glassfish 3.1.2, tambem uso o datasource do glassfish que configurei pelo Netbeans

Se alguem puder ajudar!!!

Vlw

bom… eu não sei qual a versão do EJB que você está usando, mas ao menos em EJB 3.0 você não vai conseguir usar essa anotação @EJB para injetá-lo em uma classe que não seja outro EJB, um managed bean ou se bem me lembro uma servlet… ejb 3.1 eu não tenho certeza sobre isso…

outra coisa também, eu estou acostumado a injetar o tipo da interface do EJB, não o da implementação… de repente até funciona, não cheguei a testar mas indico que teste também… também pode ser isso.

Polverini

vou testar vlw

maior_abandonado

eu testei aqui em um exemplo que tinha funcionando, mudar o tipo do objeto injetado do tipo da interface para o tipo da implementação e deu erro dizendo justamente que não encontrou a interface de nome … olhando direito sua mensagem de erro, ja ali no começo, veja:

…Remote ejb-ref name=com.ask.intranet.controller.UsuarioController/dao,Remote 3.x interface =com.ask.intranet.dao.UsuarioDao,…

Polverini

bom eu estou usando o ejb conforme a apostila da K19 JPA2+EJB3.1+CDI, tentei implementar a interface mas agora deu outro erro :

Grave: Exception while loading the app : EJB Container initialization error
maior_abandonado

Polverini:
bom eu estou usando o ejb conforme a apostila da K19 JPA2+EJB3.1+CDI, tentei implementar a interface mas agora deu outro erro :

Grave: Exception while loading the app : EJB Container initialization error

essa parte da mensagem só diz que houve um erro… não tem mais nada sobre o erro depois, algum stack trace por exemplo?

seu EJB é 3.1 então? qual container você está usando?

editando… é jboss né… mas qual versão?

Polverini

estou usando o glassfish, deu alguns erros mas tudo referente a ejb, implementei o exemplo da apostila e funcionou certinho.

maior_abandonado

Polverini:
estou usando o glassfish, deu alguns erros mas tudo referente a ejb, implementei o exemplo da apostila e funcionou certinho.

ta resolvido então? o que você alterou? qual a versão do glassfish vc ta usando?

Polverini

o exemplo funciona mas o que criei nao hehe

eu criei um projeto novo, vou tentar isso com o meu projeto

estou usando o glass 3.1.2

Polverini

maior_abandonado Recriei o projeto, e no bean usei @Inject ao invés do @EJB e está funcionando legal, obrigado pela ajuda !

Criado 18 de abril de 2012
Ultima resposta 19 de abr. de 2012
Respostas 10
Participantes 2