强制在服务器启动时重新加载客户端代码

时间:2012-07-31 14:17:02

标签: gwt

我正在使用GWT,gilead和Hibernate以及Tomcat构建一个Intranet应用程序。

由于我根据用户的反馈积极校准应用程序,我必须经常进行更改并重新启动tomcat。我想知道如何能够无限制地将这些更改提供给客户端。 (目前我总是要求他们在重新启动tomcat后刷新)。

由于应用程序是基于客户端(js)的,因此客户端具有应用程序代码。想象一下他打开应用程序的场景,我上传了一个新版本并重新启动。重启后,用户可以完全继续使用该应用程序,因为他打开了页面,但他正在执行旧代码。如何让客户端了解新代码?我想只是使会话无效并将用户重定向到登录页面将不会这样做,因为js代码将不会刷新。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

正如您所提到的,应用程序将在服务器端更新后继续工作。如果未更改接口,甚至可以在服务器上调用新版本。

可能的解决方案是打开彗星连接,例如使用Atmosphere for GWT。在部署新版本的任何时候,您都会向活动客户端广播事件。客户端应用程序将接收此广播并对其进行操作,提示用户刷新。您还可以使用此机制将消息传递给活动客户端,例如即将到来的服务器维护时间。