2 Replies Latest reply on Mar 28, 2011 10:14 AM by carcophan

    @EJB vs. InitialCotext.doLookup(...)

    carcophan

       

      Hello,

      I have a question about context lookups and dependency injection regarding the following scenario:

      I'm using JBoss 6.0, JSF 2.1 (Mojarra), EJB3.1
      I have and ejb jar and a war archive packaged together in an ear.
      My ejb-jar contains a stateless, no interface (local) session bean.
      My war has a session scoped managed bean.

      Inside my managed bean, I use the @EJB annotation to inject an instance of my no-interface session bean - works like a charm!
      However, when I deploy the ejb-jar and the war archives separately (without the ear) I get an error, stating that "Could not resolve @EJB reference... ". However when I remove the @EJB annotation in my managed bean and do a "InitialContext.doLookup("...") instead, I get no errors and everything isfine.

      Why doesn't dependency Injection using the @EJB annotation work when deploying the artifacts separately but a manual lookup does?
      (I first deploy my ejb-jar and afterwards I deploy the war.)

      Does anyone have a clue?