gpt4 book ai didi

jboss7.x - @Inject 不工作 EJB 调用它自己的方法

转载 作者:行者123 更新时间:2023-12-02 22:00:35 25 4
gpt4 key购买 nike

平台:JBoss AS 7.1.1。

我有一个无状态 bean 方法,需要调用同一 bean 的另一个方法,但必须通过 EJB 容器。

@Stateless
public class OrderManager {
@Resource
SessionContext ctx;
@Inject
MailUtil mm;
Logger logger = Logger.getLogger("Test");

public void method1() {
if (mm == null) {
logger.info("MailUtil is null");
}

ctx.getBusinessObject(OrderManager.class).method2();
}

@Asynchronous
public void method2() {
if (mm == null) {
logger.info("MailUtil is null");
}
}
}

不幸的是,注入(inject)的变量 mm 在 method2() 中为 null。而在 method1() 中,存在正确注入(inject)的 mm 变量。

这是 JBOss 的缺陷,还是我做错了什么?谢谢。

最佳答案

使用 WebSphere 8.5.5.5 时,我也发生了同样的事情。自注入(inject)的 Bean 在其注入(inject)的 Bean 中为 null。

解决方案是将第二个方法从 private 更改为 public

关于jboss7.x - @Inject 不工作 EJB 调用它自己的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15122078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com