javax.ejb.NoSuchEJBException:找不到有状态bean:3j011-udy7sm-hkt798pd-1-hkt7bobh-9

时间:2013-08-26 04:53:24

标签: ejb stateful-session-bean

很多时候,当我尝试访问某些页面或单击“无法找到有状态bean:3j011-udy7sm-hkt798pd-1-hkt7bobh-9”错误时,屏幕上会出现JSF项目错误。有人知道原因吗这个errpr

1 个答案:

答案 0 :(得分:1)

可能是你遇到了超时,容器已经删除了有状态会话。

您可以使用@StatefulTimeout(EJB 3.1)来设置此值。来自Javadoc

的引用
  

指定有状态会话bean在符合容器删除条件之前可以空闲(不接收任何客户端调用)的时间。

要验证是否确实如此,请添加@PreDestroy的方法,以便查看是否已删除SFSB。

示例:

@Stateful(name = "xxx")
@StatefulTimeout(value = 15, unit = TimeUnit.SECONDS)
public class Sfsb {
  @PreDestroy
  public void preDestroy() {
    System.out.println("INFO: " + "@PreDestroy");
  }
}