我有点不确定会话bean的不同类型以及如何在JSF的支持bean中正确使用它们。
在一次调用中完成业务流程时使用的无状态会话。 当业务流程需要在多个步骤中完成并且您希望在调用之间“缓存”服务器上的数据时,将使用有状态会话Bean。这些类型具有不同的性能和您必须考虑的事项。我想我理解这一部分,假设你有一个无状态sessionbean,它代表用户检索用户并执行单任务。
然后我希望由无状态sessionbean检索的用户在JSF中可用一段时间。你是否将这个无状态sessionbean注入到sessioncoped支持bean中?这个注入的无状态sessionbean会发生什么,它会在sessioncoped支持bean被删除之前返回到池中?如果这可能是一种资源匮乏?
然后我想到将无状态sessionbean设置为有状态的sessionbean并让restbean被请求编组。
我对后备和EJB中的不同范围有点困惑。
答案 0 :(得分:0)
HttpSession与EJB会话不同。因此,当您从会话范围的托管bean调用SLSB时,将只使用池中的SLSB,并在请求完成后将其返回到池中。因此,因为这样的单个SLSB将不会绑定到客户端托管bean。我认为最好有一个会话范围的托管bean而不是一个用于管理用户会话的请求范围。