From e2618e7232164c7d75b2e8229496d200fa2e3a3c Mon Sep 17 00:00:00 2001 From: Heng Sin Low Date: Tue, 23 Oct 2012 16:05:33 +0800 Subject: [PATCH] IDEMPIERE-430 Whole page hang at browser refresh --- .../WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java | 1 + .../WEB-INF/src/org/adempiere/webui/component/Window.java | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java index 3631ad380d..1ece6231f3 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/AdempiereWebUI.java @@ -259,6 +259,7 @@ public class AdempiereWebUI extends Window implements EventListener, IWeb if (desktopCache != null) desktopCache.removeDesktop(Executions.getCurrent().getDesktop()); } catch (Exception e) { + e.printStackTrace(); appDesktop = null; } finally { eco.cleanup(); diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java index 4a54f53044..0954b5cc50 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/component/Window.java @@ -18,6 +18,7 @@ package org.adempiere.webui.component; import org.adempiere.webui.event.DialogEvents; +import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.Events; @@ -74,7 +75,10 @@ public class Window extends org.zkoss.zul.Window @Override public void onPageDetached(Page page) { super.onPageDetached(page); - Events.sendEvent(this, new Event(DialogEvents.ON_WINDOW_CLOSE, this, null)); + if (Executions.getCurrent() != null && Executions.getCurrent().getDesktop() != null && + Executions.getCurrent().getDesktop().getExecution() != null) { + Events.sendEvent(this, new Event(DialogEvents.ON_WINDOW_CLOSE, this, null)); + } } /**