Author: ruwan
Date: Tue Sep 30 12:45:45 2008
New Revision: 700565

URL: http://svn.apache.org/viewvc?rev=700565&view=rev
Log:
Fixing an issue in clonning the message into a new message (fault stack was not 
being copied)

Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/MessageHelper.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/MessageHelper.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/MessageHelper.java?rev=700565&r1=700564&r2=700565&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/MessageHelper.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/MessageHelper.java
 Tue Sep 30 12:45:45 2008
@@ -17,16 +17,14 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.neethi.Policy;
 import org.apache.neethi.PolicyEngine;
+import org.apache.synapse.FaultHandler;
 import org.apache.synapse.MessageContext;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
 import org.apache.synapse.core.axis2.Axis2MessageContext;
 import org.apache.synapse.mediators.eip.EIPConstants;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
+import java.util.*;
 
 /**
  *
@@ -81,6 +79,13 @@
             }
         }
 
+        Stack faultStack = synCtx.getFaultStack();
+        FaultHandler faultHandler = (FaultHandler) faultStack.pop();
+        while (faultHandler != null) {
+            newCtx.pushFaultHandler(faultHandler);
+            faultHandler = (FaultHandler) faultStack.pop();
+        }
+
         return newCtx;
     }
 


Reply via email to