Vaadin中的缓存问题

Kal*_*aju 4 vaadin

我有一个示例应用程序,其中包含以下三个步骤

输入用户详细信息 - >个人详细信息 - >已完成

当我点击链接时,它将调用我的vaadin应用程序.问题是,一旦我的三步过程完成,当我再次尝试点击我的vaadin链接时,它仍会显示最终向导页面'已完成'

(如果我想再次查看第一页,即输入用户详细信息向导页面,则需要清除浏览器缓存或需要重新启动浏览器)

Jon*_*vik 9

由于Vaadin将会话保留在内存中,因此在看到新的浏览器会话(即缓存清除或浏览器重新启动)之前,您的应用程序不会重置.在开发过程中清除会话的另一种方法是将?restartApplication添加到应用程序的URL.这也将清除应用程序状态.

因此,考虑到这一点很清楚,如果你喜欢的Vaadin应用程序的状态,以它的正常使用期间被重置,你必须以编程方式确保内部逻辑在做这样的工作方式.例如,为第一个视图调用自定义的reset()方法.

确保不要将此基于会话的应用程序状态与每次按下重新加载时重置应用程序的页面状态混淆,或者在未创建新的浏览器会话的情况下再次打开链接.

关于这一点的Vaadin书中的部分:http://vaadin.com/book/-/page/architecture.server-side.html

  • 好吧,如果你想以编程方式结束应用程序状态,只需调用yourApplication.close().这将结束会话并重新启动应用程序.但是,我更喜欢通过将输入值设置为null或默认值来重置表单数据. (4认同)