commit | 2976b338eb49d8e549697110d7af302eab8b092b | [log] [tgz] |
---|---|---|
author | Willem Ning Jiang <ningjiang@apache.org> | Wed Dec 05 08:03:50 2012 +0000 |
committer | Willem Ning Jiang <ningjiang@apache.org> | Wed Dec 05 08:03:50 2012 +0000 |
tree | 17a2b12c6d4c90a43f7d238541ad20a931c80ed7 | |
parent | 555c26c3ae2050c6eb7a3319c720efff7de832bb [diff] |
SMX4-1314 CXF NMR transport throws NPE when it handles the fault message git-svn-id: https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk@1417303 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/cxf/cxf-transport-nmr/src/main/java/org/apache/servicemix/cxf/transport/nmr/NMRDestinationOutputStream.java b/cxf/cxf-transport-nmr/src/main/java/org/apache/servicemix/cxf/transport/nmr/NMRDestinationOutputStream.java index bf34832..5af4a74 100644 --- a/cxf/cxf-transport-nmr/src/main/java/org/apache/servicemix/cxf/transport/nmr/NMRDestinationOutputStream.java +++ b/cxf/cxf-transport-nmr/src/main/java/org/apache/servicemix/cxf/transport/nmr/NMRDestinationOutputStream.java
@@ -88,11 +88,11 @@ LOG.fine(new org.apache.cxf.common.i18n.Message("CREATE.NORMALIZED.MESSAGE", LOG).toString()); if (inMessage.getExchange().getOutFaultMessage() != null) { org.apache.cxf.interceptor.Fault f = (org.apache.cxf.interceptor.Fault) inMessage.getContent(Exception.class); - if (f.hasDetails()) { - xchng.getFault().setBody(new DOMSource(doc)); - } else { + if (!f.hasDetails()) { xchng.setError(f); } + // As the fault is already marshalled by the fault handler + xchng.getFault().setBody(new DOMSource(doc)); } else { //copy attachments if (outMessage != null && outMessage.getAttachments() != null) {