You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ff...@apache.org on 2008/10/20 05:39:41 UTC

svn commit: r706115 - in /servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src: main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java

Author: ffang
Date: Sun Oct 19 20:39:41 2008
New Revision: 706115

URL: http://svn.apache.org/viewvc?rev=706115&view=rev
Log:
[SM-1637] smx-cxf-bc provider throws NPE at JbiInWsdl1Interceptor.handleJBIFault

Modified:
    servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
    servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java

Modified: servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
URL: http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java?rev=706115&r1=706114&r2=706115&view=diff
==============================================================================
--- servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java (original)
+++ servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java Sun Oct 19 20:39:41 2008
@@ -632,12 +632,14 @@
                         f = new JBIFault(
                                 new org.apache.cxf.common.i18n.Message(
                                         "Fault occured", (ResourceBundle) null));
-                        Element details = toElement(exchange.getFault()
-                                .getContent());
-                        f.setDetail(details);
                         if (exchange.getProperty("faultstring") != null) {
                             f.setMessage((String)exchange.getProperty("faultstring"));
+                        } else {
+                            Element details = toElement(exchange.getFault()
+                                .getContent());
+                            f.setDetail(details);
                         }
+                        
                                                 
                     } else {
                         Element details = toElement(exchange.getFault()
@@ -709,6 +711,10 @@
 
         // this method is used for ws-policy to set BindingFaultInfo
         protected void processFaultDetail(Fault fault, Message msg) {
+            if (fault.getDetail() == null) {
+                return;
+            }
+            
             Element exDetail = (Element) DOMUtils.getChild(fault.getDetail(),
                     Node.ELEMENT_NODE);
             if (exDetail == null) {

Modified: servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java
URL: http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java?rev=706115&r1=706114&r2=706115&view=diff
==============================================================================
--- servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java (original)
+++ servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java Sun Oct 19 20:39:41 2008
@@ -153,7 +153,7 @@
             mtomPort.testXop(name, param);
             fail("should catch RuntimeException");
         } catch (RuntimeException ex) {
-            //
+            assertEquals("throw runtime exception", ex.getMessage());
         }
 
     }