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