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());
         }
 
     }


Reply via email to