会话范围bean - 如何处理多用户数据

时间:2012-11-26 12:57:06

标签: java jsf jsf-2 javabeans session-scope

我已经使用JSF 2.0创建了一个Web应用程序。我到处都使用会话范围bean ,因此我遇到了问题。 :(我将用下面的例子解释。

我有dataTable中的用户列表。当我点击用户时,我会看到该用户的详细信息。现在,当我右键单击用户A并单击Open in new tab时,我会在新选项卡中看到用户A的详细信息。

现在,当我右键单击用户B并单击在新选项卡中打开时,我会看到用户B的详细信息。

但是当我进入选项卡(用户A详细信息在那里)并刷新该页面时,我会看到用户B的详细信息。

如何克服这一点,以便在刷新页面时,我仍会看到用户A而非用户B的详细信息。

1 个答案:

答案 0 :(得分:5)

将bean放在视图范围内。

打开详细信息页面时,您应该发送GET请求,而不是POST请求。使用普通<h:link>将{(1}}作为请求参数传递用户标识符,并在目标视图中使用转换器将其转换为正确的模型值。

会话范围应仅用于会话范围数据,例如登录用户及其首选项。

另见: