diff --git a/src/com/happyr/java/deferredEventWorker/Message.java b/src/com/happyr/java/deferredEventWorker/Message.java index 4bb7df3..baadeff 100644 --- a/src/com/happyr/java/deferredEventWorker/Message.java +++ b/src/com/happyr/java/deferredEventWorker/Message.java @@ -84,6 +84,6 @@ public String getHeader(String name) { } public void addHeader(String key, String value) { - headers.put(key, value); + headers.put(key, value.replaceAll(":", "=").replaceAll("[\r\n]", " #> ")); } } diff --git a/src/com/happyr/java/deferredEventWorker/Worker.java b/src/com/happyr/java/deferredEventWorker/Worker.java index 97f2c48..73b0f72 100644 --- a/src/com/happyr/java/deferredEventWorker/Worker.java +++ b/src/com/happyr/java/deferredEventWorker/Worker.java @@ -29,6 +29,7 @@ public void run() { //if there was any error if (error != null) { + System.err.println(error); message.addHeader("error", error); mq.reportError(message.getFormattedMessage()); } diff --git a/src/com/happyr/java/deferredEventWorker/executors/FastCgiExecutor.java b/src/com/happyr/java/deferredEventWorker/executors/FastCgiExecutor.java index 52e4a63..1651776 100644 --- a/src/com/happyr/java/deferredEventWorker/executors/FastCgiExecutor.java +++ b/src/com/happyr/java/deferredEventWorker/executors/FastCgiExecutor.java @@ -28,7 +28,7 @@ public String execute(Message message) { PrintWriter pw = new PrintWriter(sw); e.printStackTrace(pw); - return "Unknown java error: " + sw.toString().replaceAll("[\n\f\r]", ""); + return "Unknown java error: " + sw.toString(); } } @@ -70,7 +70,9 @@ private String doExecute(Message message) throws IOException { //close the connection connection.close(); - //TODO if error? - return response; + if (connection.hasOutputOnStdErr()) + return response; + + return null; } } \ No newline at end of file