大家好,我在我的应用程序中使用 gwt-ext。在那个应用程序会话时间是 5 分钟。我的问题是,如果打开任何窗口以呈现某些信息并且在会话之间关闭,则用户已注销,但在这种情况下打开的窗口不会关闭。
所以只想知道在会话超时和用户注销时打开窗口的关闭程度。
提前致谢。
在 GWT 中有一个名为Timer的类,我们可以在其中定期向服务器发出请求。这样您就可以在服务器端检查会话,当会话无效时,您可以将应用程序重新加载到登录页面或不使用Window.Location.reload() 的其他页面;
您可以按照以下步骤在会话超时时关闭任何打开的窗口:
每当您制作窗口对象时:为该窗口分配一个 Id。
window.setId("myWindow");
在您处理会话超时的地方,放置以下代码:
ExtElement extElement = Ext.get("myWindow");
if (extElement != null && Ext.getCmp(extElement) != null
&& Ext.getCmp(extElement) instanceof Window) {
Window window = (Window) Ext.getCmp(extElement);
window.close();
}