2011-04-29 62 views
0

大家好所有 我在我的应用程序中使用gwt-ext。在那个应用程序中会话时间是5分钟。 我的问题是,如果任何窗口打开呈现一些信息&之间会话熄灭然后用户注销,但在这种情况下打开的窗口不关闭。gwt中的窗口关闭问题-ext

所以只是想知道,当会话超时和用户注销时,打开的窗口有多近。

在此先感谢。

回答

1

您可以按照这些步骤在sesssion时间来关闭任何巡回打开的窗口:

  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(); 
    } 
    
1

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