我使用struts2,EJB 3.0 ... 我的要求是从struts2操作类调用EJB层。 我希望有两种方法可以实现这一目标:
1.Using @EJB annotation in Action class
2.Using JNDI look up
我都尝试过,
但是 JNDI 查找
的问题是,即使我使用正确的命名,我也会收到 NameNotFoundException
。因此最终,我的团队转向了使用 @EJB 注释的其他方法。
但是当我使用 @EJB
注释时,我从中得到 null,我认为它没有注入(inject):
收到NullPointerException
代码:
@EJB(mappedName="BeanLocal/local")
BeanLocal bean ;
任何人都可以建议我进一步做什么... 另外,如果 SOF 中有任何链接,请引用我,因为我没有发现与此相关的内容
最佳答案
您无法在 Struts 2 操作类中使用传统的依赖项注入(inject),因为操作不受管理。然而,有一种方法可以通过使用CDI plugin来实现这一点。或Guice 。 您还可以使用 JNDI 查找,但语法取决于您的服务器。您最好的选择是根据您所拥有的内容检查文档( JBoss 7.1 , Glassfish ...)
关于dependency-injection - 在struts2 Action 中注入(inject)EJB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12177594/