Can't find EJB object through @EJB annotation
---------------------------------------------

                 Key: GERONIMO-5467
                 URL: https://issues.apache.org/jira/browse/GERONIMO-5467
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: OpenEJB
    Affects Versions: 3.0-M1
            Reporter: LiWenQin


I deployed a war package on Geronimo-3.0,  which is in the attachment.
A Servlet uses a singleton EJB through @EJB annotation.
When the wep app invoked the Servlet, an exception appeared as below.

javax.servlet.ServletException: Error instantiating servlet class 
org.apache.geronimo.testsuite.ejbtest.backServlet.CalculatorServlet
        
org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:666)
        
org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
        
org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
        
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108)
        
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:402)
        
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:254)
        
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:267)
        
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:245)
        
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:260)
        org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
        
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
        
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        java.lang.Thread.run(Thread.java:619)

Root cause

java.lang.InstantiationException: Some objects to be injected were not found in 
jndi: [javax.naming.NameNotFoundException: No EJB found for reference 
"org.apache.geronimo.testsuite.ejbtest.backServlet.CalculatorServlet/calc": 
ejb-link=null, interface=null]
        org.apache.geronimo.j2ee.annotation.Holder.newInstance(Holder.java:171)
        
org.apache.geronimo.tomcat.TomcatInstanceManager.newInstance(TomcatInstanceManager.java:65)
        
org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:666)
        
org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
        
org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
        
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108)
        
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:402)
        
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:254)
        
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:267)
        
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:245)
        
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:260)
        org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
        
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
        
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        java.lang.Thread.run(Thread.java:619).

       The full stack trace of the root cause is available in the Apache 
Tomcat/7.0.0.1-SNAPSHOT logs.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to