我想从内部类访问注入(inject)的对象。 奇怪的是,有时这会起作用。 但有时我会遇到调用异常: org.jboss.as.ejb3.component.EJBComponentUnavailableException:JBAS014559:组件关闭时调用无法继续
我正在使用 Wildfly 8.0 和 8.1。
@LocalBean
@Stateful
public class Outer {
@EJB AccessStateful accessStateful;
String s = "foo";
public void start(){
Inner i = this.new Inner();
i.doSomething;
}
public class Inner {
public doSomething(){
doPrivate();
}
private doPrivate(){
Outer.this.accessStateful.accessMethode(s);
}
}
}
@LocalBean
@Stateful
public class AccessStateful{
public void accessMethode(String s){
// do something here
}
有什么想法吗?
最佳答案
根据您收到的错误消息,似乎会发生这种情况,因为您试图在外部类成员被销毁时/之后访问它。
在外部 EJB 仍然处于 Activity 状态时(使用 EJB 生命周期注释),尝试安排调用执行您希望它执行的任何操作。
关于java - 内部类访问EJB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24278095/