こんにちは、私はアプリケーションで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();
}