JSF视图是否在用户之间共享?



我已经将web.xml中会话属性中的逻辑视图和视图的#定义为1,因此只有最多1个视图。鉴于此,我有几个问题:

  • 这个#是特定于给定用户的吗?这是否将每个用户的视图数限制为1 ?**如果是,是否可以在多个用户之间有相同JSP的多个视图表示?

  • 是否有一种方法可以跨用户共享JSF视图(假设视图相当通用并且不包含任何用户特定的数据)?

谢谢!

如果你对"用户"的一般定义实际上等于" HTTP会话",那么是的,你是对的。视图基本上存储在HTTP会话中,并由名称为javax.faces.ViewState的隐藏HTML输入字段引用。不同的HTTP会话不会彼此共享它们的视图,否则这显然是一个巨大的错误和安全漏洞。

通过将会话中的(逻辑)视图数量设置为1,您可以消除用户在同一会话中不同窗口/选项卡中使用包含POST表单的多个视图的可能性。每次终端用户打开一个新的窗口/选项卡,终端用户将收到一个ViewExpiredException每当终端用户在前一个窗口/选项卡中触发POST请求,因为你已经配置它只保留一个视图在会话中,这是最后打开的一个。

相关内容

  • 没有找到相关文章

最新更新