我有CDI和更多不是RequestScoped的java类。在任何这些java类中,我都想使用我的bean,但是它可以被注入(为什么?我不知道)一种可能的方法是使用以下代码:
final Hashtable jndiProperties = new Hashtable();
jndiProperties.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
final Context context = new InitialContext(jndiProperties);
EntityManagment em = (EntityManagment) context.lookup("java:app/drools-guvnor/EntityManagment");如果我的bean是无状态的和localbean,它就能很好地工作。我能为无无状态和本地what做些什么?
发布于 2014-05-26 11:16:13
CDI没有JNDI名称。
您可以自己注册它们,也可以创建一个已经注入对象的EJB。然后您可以查找这个EJB并从那里获取注入的对象。
https://stackoverflow.com/questions/23755682
复制相似问题