CAMEL-10888 - handling in exchange pattern
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/b4fd8bf4 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/b4fd8bf4 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/b4fd8bf4 Branch: refs/heads/master Commit: b4fd8bf41432424e4d16b3370d4417182a745fe4 Parents: 4a1e2ff Author: onders86 <[email protected]> Authored: Fri Feb 24 16:17:42 2017 +0300 Committer: Claus Ibsen <[email protected]> Committed: Sat Feb 25 19:49:25 2017 +0100 ---------------------------------------------------------------------- .../spring/ws/SpringWebserviceConsumer.java | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/b4fd8bf4/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConsumer.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConsumer.java b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConsumer.java index dd964bd..54ac6ff 100644 --- a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConsumer.java +++ b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConsumer.java @@ -57,21 +57,20 @@ public class SpringWebserviceConsumer extends DefaultConsumer implements Message // start message processing getProcessor().process(exchange); - Message responseMessage = null; - Source responseBody = null; + if (exchange.getException() != null) { throw exchange.getException(); } else { - responseMessage = exchange.hasOut() ? exchange.getOut(Message.class) : exchange.getIn(Message.class); - } - if (responseMessage != null) { - responseBody = responseMessage.getBody(Source.class); - WebServiceMessage response = messageContext.getResponse(); + Message responseMessage = exchange.hasOut() ? exchange.getOut(Message.class) : exchange.getIn(Message.class); + if (responseMessage != null) { + Source responseBody = responseMessage.getBody(Source.class); + WebServiceMessage response = messageContext.getResponse(); - configuration.getMessageFilter().filterConsumer(exchange, response); + configuration.getMessageFilter().filterConsumer(exchange, response); - XmlConverter xmlConverter = configuration.getXmlConverter(); - xmlConverter.toResult(responseBody, response.getPayloadResult()); + XmlConverter xmlConverter = configuration.getXmlConverter(); + xmlConverter.toResult(responseBody, response.getPayloadResult()); + } } }
