0

大家好,我在我的应用程序中使用 gwt-ext。在那个应用程序会话时间是 5 分钟。我的问题是,如果打开任何窗口以呈现某些信息并且在会话之间关闭,则用户已注销,但在这种情况下打开的窗口不会关闭。

所以只想知道在会话超时和用户注销时打开窗口的关闭程度。

提前致谢。

4

2 回答 2

1

在 GWT 中有一个名为Timer的类,我们可以在其中定期向服务器发出请求。这样您就可以在服务器端检查会话,当会话无效时,您可以将应用程序重新加载到登录页面或不使用Window.Location.reload() 的其他页面;

于 2011-04-29T11:46:20.093 回答
1

您可以按照以下步骤在会话超时时关闭任何打开的窗口:

  1. 每当您制作窗口对象时:为该窗口分配一个 Id。

    window.setId("myWindow");
    
  2. 在您处理会话超时的地方,放置以下代码:

    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();
    }
    
于 2011-05-12T11:23:11.767 回答