尝试将@Applicationscoped CDI bean注入EJB bean失败,并出现ContextNotActiveException

时间:2015-10-08 09:01:19

标签: java-ee ejb websphere cdi ear

我正在尝试在Websphere 8.5.5上的EAR应用程序中使用@ApplicationScoped CDI bean,但我没有这样做。

我的结构:

  • app.ear
    • ejb.jar
      • MyEJB
    • LIB /
      • lib.jar
        • MyLib中

MyLib是CDI bean:

import javax.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class MyLib {

...

}

我想把它注入无状态bean MyEJB:

@Stateless
public class MyEJB implements MyEJBLocal {

@Inject
private MyLib myLib;

...

}

我正在使用@ApplicationScoped,因为这似乎是创建CDI托管单例的推荐方法。

注意:我没有使用任何WAR,我没有网络层。

现在,当EJB bean被实例化时,我得到以下异常:

 javax.enterprise.context.ContextNotActiveException: WebBeans context with scope type annotation @ApplicationScoped does not exist within current thread

我做错了什么以及如何将Singleton CDI bean注入EJB?

0 个答案:

没有答案