From 794e0acbf9e599c7bdcb0c3536997ccece735c6b Mon Sep 17 00:00:00 2001 From: Maciej Swiderski Date: Mon, 14 Oct 2013 18:31:34 +0200 Subject: [PATCH] BZ-1002054 - If simulation engine failed then regular user does not know why (cherry picked from commit 7aca544236890cf0f0c48a5f8f28a35776f9149c) --- .../org/jbpm/designer/web/server/SimulationServlet.java | 9 ++++----- .../org/jbpm/designer/public/js/Plugins/simulation.js | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/jbpm-designer-backend/src/main/java/org/jbpm/designer/web/server/SimulationServlet.java b/jbpm-designer-backend/src/main/java/org/jbpm/designer/web/server/SimulationServlet.java index b24d817a3d..ce1cc33b88 100644 --- a/jbpm-designer-backend/src/main/java/org/jbpm/designer/web/server/SimulationServlet.java +++ b/jbpm-designer-backend/src/main/java/org/jbpm/designer/web/server/SimulationServlet.java @@ -427,15 +427,14 @@ protected void doPost(HttpServletRequest req, HttpServletResponse resp) parentJSON.put("pathsim", processPathsJSONArray); } - PrintWriter pw = resp.getWriter(); + PrintWriter pw = resp.getWriter(); resp.setContentType("text/json"); resp.setCharacterEncoding("UTF-8"); pw.write(parentJSON.toString()); + } catch (Exception e) { - PrintWriter pw = resp.getWriter(); - resp.setContentType("text/json"); - resp.setCharacterEncoding("UTF-8"); - pw.write("{}"); + _logger.error("Error during simulation", e); + resp.sendError(HttpServletResponse.SC_NO_CONTENT, e.getMessage()); } } diff --git a/jbpm-designer-client/src/main/resources/org/jbpm/designer/public/js/Plugins/simulation.js b/jbpm-designer-client/src/main/resources/org/jbpm/designer/public/js/Plugins/simulation.js index 9c9ac4b0a4..c48ae089d1 100644 --- a/jbpm-designer-client/src/main/resources/org/jbpm/designer/public/js/Plugins/simulation.js +++ b/jbpm-designer-client/src/main/resources/org/jbpm/designer/public/js/Plugins/simulation.js @@ -464,7 +464,7 @@ ORYX.Plugins.Simulation = Clazz.extend({ method: 'POST', success: function(response) { try { - if(response.responseText && response.responseText.length > 0 && response.responseText != "{}") { + if(response.responseText && response.responseText.length > 0 && response.status == 200) { this.facade.raiseEvent({ type: ORYX.CONFIG.EVENT_SIMULATION_SHOW_RESULTS, results: response.responseText @@ -472,8 +472,8 @@ ORYX.Plugins.Simulation = Clazz.extend({ } else { this.facade.raiseEvent({ type : ORYX.CONFIG.EVENT_NOTIFICATION_SHOW, - ntype : 'info', - msg : 'Simulation engine did not return results.', + ntype : 'error', + msg : 'Simulation engine did not return results:\n' + response.statusText, title : '' });