我想在我的应用程序中添加用户会话支持。因为重新加载页面会重新启动应用程序,甚至打开另一个浏览器选项卡都会导致原来的“不同步”问题。
我是否需要为每次登录创建一个独立的窗口,或者有没有我可以使用的插件,或者如果我让它成为Spring + Vaadin应用程序,它能解决这个问题吗?
发布于 2011-11-22 15:50:32
除非url以?restartApplication=true结尾,否则重新加载页面不会重新启动应用程序。
application对象存储在HTTP会话中,因此您希望每个用户存储的所有内容都可以与应用程序相关联。
通常,每个浏览器进程只能支持一个HTTP会话,因此每个浏览器只能支持一个用户(除非您做出重大努力,并在每个应用程序级别窗口上存储每个用户的状态。我建议您不要这样做,除非您知道自己在做什么:在web应用程序中,每个http会话一个用户是常态)
Spring+Vaadin是一个很好的组合-我在我们的项目中使用这种配对取得了很大的效果-但在这种情况下并不是特别有用。
Vaadin在它的默认配置中不支持多窗口/标签(因此你的不同步错误)。然而,编写这样的代码是很简单的:here's a simple explanation, and some code
https://stackoverflow.com/questions/8218830
复制相似问题