You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2010/06/18 20:44:07 UTC

svn commit: r956089 - in /cxf/branches/2.2.x-fixes: ./ rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java

Author: dkulp
Date: Fri Jun 18 18:44:07 2010
New Revision: 956089

URL: http://svn.apache.org/viewvc?rev=956089&view=rev
Log:
Merged revisions 956088 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/trunk

........
  r956088 | dkulp | 2010-06-18 14:43:04 -0400 (Fri, 18 Jun 2010) | 4 lines
  
  [CXF-2841]  Remove fault from exchange/message so RM interceptor
  can do the resend thing and such.
  
  Patch from Aki Yoshida applied
........

Modified:
    cxf/branches/2.2.x-fixes/   (props changed)
    cxf/branches/2.2.x-fixes/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java

Propchange: cxf/branches/2.2.x-fixes/
------------------------------------------------------------------------------
    svn:mergeinfo = /cxf/trunk:956088

Propchange: cxf/branches/2.2.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: cxf/branches/2.2.x-fixes/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java?rev=956089&r1=956088&r2=956089&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java (original)
+++ cxf/branches/2.2.x-fixes/rt/ws/rm/src/main/java/org/apache/cxf/ws/rm/RetransmissionInterceptor.java Fri Jun 18 18:44:07 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()));
+        }
     }
 }