0

我使用 JSF,我想避免在我的浏览器中共享 2 个选项卡的同一个会话。我认为一个简单的方法是强制 url 重写而不是使用 cookie。

谁能告诉我如何强制使用 JSF 重写 url?

谢谢。

斯蒂芬妮

4

1 回答 1

2

我想避免同一个会话在我的浏览器中共享 2 个选项卡

对不起,但这没有任何意义。这不是您可以从服务器端控制的东西。所有浏览器在所有打开的选项卡/窗口中使用相同的会话(除了匿名选项卡/窗口,如通过 Ctrl+Shift+N 的 Chrome Ingognito)。这就是所有浏览器的工作方式,完全超出您的控制范围。

如果您遇到问题,那么您绝对应该以不同于尝试在多个浏览器选项卡/窗口中禁用会话共享的方式来解决它(这根本不可能)。这听起来很像您在会话范围 bean 中错误地存储请求或查看范围数据。你不应该那样做。您应该将请求范围数据存储在请求范围 bean 中,并在视图范围 bean 中查看范围数据。会话范围应仅用于会话范围的数据,例如登录用户及其首选项(如语言设置)。

我认为视图范围实际上是您正在寻找的;只要您通过回发与相同的视图(阅读:相同的浏览器窗口/选项卡)交互并且它不在其他浏览器窗口/选项卡中共享,它就会存在。

也可以看看:

于 2013-02-06T12:42:34.437 回答