在一个浏览器中使用带有多个选项卡的JSF
这个问题在这里已经有了答案:
在JSF 2.0中,您可以使用视图范围来实现这一点,可以使用@ViewScoped进行@ViewScoped
。 你甚至可以定义自定义范围。
也可以看看:
@ViewScoped
的好处和缺陷 我不认为View Scope会在这里工作。 问题是关于多浏览器选项卡场景,我对View Scope的理解是每个视图(不是每个选项卡)都有一个单独的状态。 换句话说,如果您在多个浏览器选项卡中打开了相同的页面,那么您将面临共享状态的风险。
这在这里提到:http://www.java.net/node/692109
看起来这个问题只有两种解决方案:1. CDI / Seam对话范围(或类似于将额外ID添加到请求中的内容)或2.只需坚持请求范围/无状态应用程序。
MyFaces Orchestra有一种处理多个选项卡/窗口的方法(使用conversationContext
获取参数)。