【问题标题】:EJB Injection fails in managedbean (Websphere 8)managedbean 中的 EJB 注入失败 (Websphere 8)
【发布时间】:2014-05-08 05:55:59
【问题描述】:

我有一个奇怪的问题,我无法解释。

我在包 com.ejb.logic.user 中有一些类。 所有这些类都具有以下结构:

@Stateless(mappedName = "Classname")
@LocalBean
public Classname {

其中一些在一些 managedBean 中使用,如下所示:

@EJB
private Classname classname;

现在我的问题: 在 Glassfish 上它可以正常工作。没事。但是当我在 websphere 中部署应用程序时,我得到了一个例外。但是当我重命名某些类或包时它也可以工作。我无法解释它,我对这种行为一无所知。

使用:EJB 3.1 和 Websphere 8。我有一个带有 WAR(ManagedBeans)和 JAR(EJB's)的 EAR- 文件

异常:com.ibm.wsspi.injectionengine.InjectionException: com.ibm.ws.ejbcontainer.injection.factory.EJBLinkObjectFactory 工厂在获取对象实例时遇到问题 Reference:"package/classname" 绑定对象。

【问题讨论】:

  • 这听起来像是产品问题。我建议在 IBM 开设 PMR。如果你能提供一个独立的测试用例,那将是理想的。
  • 感谢您的回答。我发现了问题。在某些情况下,来自 websphere 的注释扫描失败,它没有找到一些 @stateless bean 并且没有将其合并到我的 ejb 模块中的“xml-jar_merged”......当我添加自己的 xml-jar 并添加缺少的类时它可以工作.我尝试做一个简单的测试用例。

标签: java ejb websphere managed-bean code-injection


【解决方案1】:

尝试使用参考:

@EJB(lookup = "java:comp/env/ejb/.....")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-13
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 1970-01-01
    相关资源
    最近更新 更多