【发布时间】:2011-09-28 10:54:57
【问题描述】:
在我的 JavaEE 6 应用程序 (JBoss 6.0.0.Final) 中,我有一个像这样概述的类层次结构
@Stateful public class UserFacade
{
@Inject @MyRepository
private EntityManager em;
}
@Stateful public class UserBl
{
@EJB private UserFacade fUser;
}
public class MyServlet
{
@EJB private UserBl blUser;
}
在登录过程中使用 servlet,它工作正常。但是,如果在大约 10 分钟的不活动期后从同一浏览器调用 servlet,则 UserBl 中的 EntityManager em 变为 NULL(在使用之前明确检查)。
在另一个应用程序 (JBoss 5.1.0.GA) 中,我有一个类似的问题,并通过显式检查 NULL 并在这种情况下从上下文中查找 EntitiyManager 来解决它。
我想知道是否存在根本的设计缺陷,或者我是否遗漏了什么。在这种情况下@Stateless Bean 也是可能的。但据我了解,这也应该适用于@Stateful Beans。
【问题讨论】:
标签: java jpa jakarta-ee ejb-3.0 jpa-2.0