【发布时间】:2012-11-28 12:22:29
【问题描述】:
我正在使用 JSF 2.0 创建网站,我在会话 bean 中进行了一些工作。一切正常,但是当我在另一个选项卡中打开同一个站点或右键单击并说在新选项卡中打开时会出现问题。
假设我有用户列表,点击用户名,我会看到所有用户的详细信息。现在,如果我右键单击并说在新选项卡中打开,我会在选项卡 A 中看到用户 A 的详细信息。我对用户 B 执行相同操作。我知道我的 bean 在会话 bean 中,如果我刷新选项卡 A,我最后单击用户 B , 我会看到用户 B 的数据。
我想知道,当我在新标签页中打开同一个站点或右键单击并以在新标签页中打开时如何开始新会话?
注意:根据BalusC answer,我应该使用View Scope,但是我的编程会有很多变化。所以对于这个网站,我正在考虑使用任何其他替代方式,当我在新标签页中打开同一个网站时,我可以开始新的会话。
如果我在另一个浏览器中打开同一个站点,我会看到新会话。有什么方法可以在同一个浏览器中启动新会话?
【问题讨论】:
-
你的 webapp 从一开始就设计得很糟糕。您不应该通过 hacks/workarounds 来修复它,而应该以正确的方式对其进行编码。咬紧牙关,修复你的 webapp。记住下一个 webapp 项目的经验教训。
-
@BalusC :当然,从下一个项目开始,我会处理这些 bean。你能建议我this question 使用什么范围吗