diff --git a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java index ff7d397c87..8fc426418a 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java +++ b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/AtmosphereServerPush.java @@ -268,7 +268,7 @@ public class AtmosphereServerPush implements ServerPush { } if (!resource.isSuspended()) { - resource.suspend(-1); + resource.suspend(); } this.resource.set(resource); diff --git a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/ZkAtmosphereHandler.java b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/ZkAtmosphereHandler.java index 0d5aedbdb6..948025f23a 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/ZkAtmosphereHandler.java +++ b/org.adempiere.ui.zk/WEB-INF/src/fi/jawsy/jawwa/zk/atmosphere/ZkAtmosphereHandler.java @@ -29,6 +29,8 @@ import org.atmosphere.cpr.AtmosphereRequest; import org.atmosphere.cpr.AtmosphereResource; import org.atmosphere.cpr.AtmosphereResourceEvent; import org.atmosphere.cpr.AtmosphereResponse; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.zkoss.zk.ui.Desktop; import org.zkoss.zk.ui.Session; import org.zkoss.zk.ui.http.WebManager; @@ -41,6 +43,8 @@ import org.zkoss.zk.ui.sys.WebAppCtrl; */ public class ZkAtmosphereHandler implements AtmosphereHandler { + private final Logger log = LoggerFactory.getLogger(this.getClass()); + @Override public void destroy() { } @@ -49,6 +53,7 @@ public class ZkAtmosphereHandler implements AtmosphereHandler { if (session.getWebApp() instanceof WebAppCtrl) { WebAppCtrl webAppCtrl = (WebAppCtrl) session.getWebApp(); Desktop desktop = webAppCtrl.getDesktopCache(session).getDesktopIfAny(dtid); + log.warn("Could not find desktop: " + dtid); return new Either("Could not find desktop", desktop); } return new Either("Webapp does not implement WebAppCtrl", null); @@ -101,10 +106,12 @@ public class ZkAtmosphereHandler implements AtmosphereHandler { private Either getSession(AtmosphereResource resource, HttpServletRequest request) { Session session = WebManager.getSession(resource.getAtmosphereConfig().getServletContext(), request, false); - if (session == null) + if (session == null) { + log.warn("Could not find session: " + request.getRequestURI()); return new Either("Could not find session", null); - else + } else { return new Either(null, session); + } } @Override @@ -116,6 +123,7 @@ public class ZkAtmosphereHandler implements AtmosphereHandler { Either serverPushEither = getServerPush(resource); String error = serverPushEither.getLeftValue(); if (error != null && serverPushEither.getRightValue() == null) { + log.warn("Bad Request. Error="+error+", Request="+resource.getRequest().getRequestURI()); response.setStatus(HttpServletResponse.SC_BAD_REQUEST); response.getWriter().write(error); response.getWriter().flush(); diff --git a/org.adempiere.ui.zk/WEB-INF/src/web/js/jawwa/atmosphere/serverpush.js b/org.adempiere.ui.zk/WEB-INF/src/web/js/jawwa/atmosphere/serverpush.js index 45f9fd78aa..eabe053fe0 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/web/js/jawwa/atmosphere/serverpush.js +++ b/org.adempiere.ui.zk/WEB-INF/src/web/js/jawwa/atmosphere/serverpush.js @@ -23,7 +23,7 @@ trace: false, ajaxOptions: { url: zk.ajaxURI("/comet", {au: true}), - type: "GET", + type: "POST", cache: false, async: true, global: false, @@ -35,6 +35,7 @@ this.timeout = timeout; this.ajaxOptions.data = { dtid: this.desktop.id }; this.ajaxOptions.timeout = this.timeout; + this.ajaxOptions.url = zk.ajaxURI("/comet", {au: true,desktop:this.desktop.id,ignoreSession:false}), this.trace = trace; var me = this; this.ajaxOptions.error = function(jqxhr, textStatus, errorThrown) {