From 4bcf3c7b98f540501fe5b8c8f5034e0bafef3541 Mon Sep 17 00:00:00 2001 From: Matti Tahvonen Date: Mon, 10 Dec 2007 10:09:10 +0000 Subject: [PATCH] Rewrote "criticalError" svn changeset:3194/svn branch:trunk --- .../gwt/client/ApplicationConnection.java | 9 +++++++ .../gwt/server/ApplicationServlet.java | 27 +++++++------------ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java b/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java index f7e72d1362..e04ddc6ae9 100755 --- a/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java @@ -28,6 +28,7 @@ import com.google.gwt.user.client.ui.HasWidgets; import com.google.gwt.user.client.ui.Widget; import com.itmill.toolkit.terminal.gwt.client.ui.ContextMenu; import com.itmill.toolkit.terminal.gwt.client.ui.IView; +import com.itmill.toolkit.terminal.gwt.client.ui.Notification; /** * Entry point classes define onModuleLoad(). @@ -278,6 +279,14 @@ public class ApplicationConnection { toBeFocusedWidget.setFocus(true); } } + if (meta.containsKey("appError")) { + JSONObject error = meta.get("appError").isObject(); + String caption = error.get("caption").isString().stringValue(); + String message = error.get("message").isString().stringValue(); + String html = "

" + caption + "

" + message + "

"; + new Notification(Notification.DELAY_FOREVER).show(html, + Notification.CENTERED, "error"); + } } final long prosessingTime = (new Date().getTime()) - start.getTime(); diff --git a/src/com/itmill/toolkit/terminal/gwt/server/ApplicationServlet.java b/src/com/itmill/toolkit/terminal/gwt/server/ApplicationServlet.java index a01d3819ed..c3dea9111c 100644 --- a/src/com/itmill/toolkit/terminal/gwt/server/ApplicationServlet.java +++ b/src/com/itmill/toolkit/terminal/gwt/server/ApplicationServlet.java @@ -314,7 +314,6 @@ public class ApplicationServlet extends HttpServlet { Application application = null; boolean UIDLrequest = false; try { - // handle file upload if multipart request if (ServletFileUpload.isMultipartContent(request)) { application = getExistingApplication(request, response); @@ -535,23 +534,15 @@ public class ApplicationServlet extends HttpServlet { final ServletOutputStream out = response.getOutputStream(); final PrintWriter outWriter = new PrintWriter(new BufferedWriter( new OutputStreamWriter(out, "UTF-8"))); - // TODO review: assuming that required widgets exists and using - // hardcoded: PID0, name: 0 - outWriter.print(")/*{\"changes\":[[\"change\",{\"format\": \"uidl\"" - + ",\"pid\": \"PID0\"},[\"window\",{\"id\": \"PID0\"," - + "\"caption\": \"Session expired\",\"name\": \"0\"," - + "\"theme\": \"\",\"main\":true,\"v\":{\"scrollleft\":0" - + ",\"scrolldown\":0,\"positionx\":-1,\"positiony\":-1," - + "\"scrolltop\":0,\"scrollleft\":0,\"close\":false," - + "\"focused\":\"\"}},[\"orderedlayout\",{\"id\": " - + "\"PID1\",\"cached\":true}],[\"notifications\",{}," - + "[\"notification\",{\"caption\": \"" + caption - + "\",\"message\": \"
Please click " + "here to restart your application.
" - + "You can also click your browser's" - + " refresh button.
\"," - + "\"position\":1,\"delay\":-1,\"style\": \"error\"}]]]]]," - + " \"meta\" : {}, \"resources\": {}, \"locales\":[]"); + outWriter + .print(")/*{\"changes\":[], \"meta\" : {" + + "\"appError\": {" + + "\"caption\":\"" + + caption + + "\"," + + "\"message\" : \"Please click here to restart your application.
" + + "You can also click your browser's refresh button.\"" + + "}}, \"resources\": {}, \"locales\":[]"); outWriter.flush(); outWriter.close(); out.flush(); -- 2.39.5