EJB3 会话 bean 是否有请求范围的上下文?我的环境是 Java-EE-5。
这个例子
@Remote(SessionFacade.class) @Stateless
public class SessionFacadeBean implements SessionFacade {
@EJB
private Other bean;
public void myBusinessMethod() {
// TODO: get or create *myRequestScope*
*myRequestScope*.put("demo", Integer.valueOf( 1 ));
bean.otherBusinessMethod();
sysout(*myRequestScope*.get("demo"));
}
}
@Local(Other.class) @Stateless
public class OtherBean implements Other {
public void otherBusinessMethod() {
// TODO: get or create *myRequestScope*
*myRequestScope*.put("demo", Integer.valueOf( 2 ));
}
}
调用 SessionFacadeBean#myBusinessMethod() 时应始终打印输出“2” - 无论并行调用如何。
我没有使用 CDI 的奢侈。而且,它还应该独立于事务传播(因此 JCA 也不是一个选项)。