Author: dkulp
Date: Fri Jun 18 18:43:04 2010
New Revision: 956088

URL: http://svn.apache.org/viewvc?rev=956088&view=rev
Log:
[CXF-2841]  Remove fault from exchange/message so RM interceptor
can do the resend thing and such.

Patch from Aki Yoshida applied

Modified:
    
cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java

Modified: 
cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java?rev=956088&r1=956087&r2=956088&view=diff
==============================================================================
--- 
cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java
 (original)
+++ 
cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java
 Fri Jun 18 18:43:04 2010
@@ -68,9 +68,15 @@ public class RetransmissionInterceptor e
         if (null == os) {
             return;
         }
-        
-        WriteOnCloseOutputStream stream = RMUtils.createCachedStream(message, 
os);
-        stream.registerCallback(new RetransmissionCallback(message, 
getManager()));
+        if (isFault) { 
+            // remove the exception set by the PhaseInterceptorChain so that 
the 
+            // error does not reach the client when retransmission is 
scheduled 
+            message.setContent(Exception.class, null);
+            message.getExchange().put(Exception.class, null); 
+        } else { 
+            WriteOnCloseOutputStream stream = 
RMUtils.createCachedStream(message, os);
+            stream.registerCallback(new RetransmissionCallback(message, 
getManager()));
+        }
     }
 }
     


Reply via email to