Author: hiranya
Date: Thu May 26 23:14:02 2016
New Revision: 1745677
URL: http://svn.apache.org/viewvc?rev=1745677&view=rev
Log:
Improved error handling in the AbstractListMediator; Triggering the fault
sequence for all non-SynapseExceptions. Applying the patch provided by Buddhima
at SYNAPSE-1011
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/AbstractListMediator.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/AbstractListMediator.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/AbstractListMediator.java?rev=1745677&r1=1745676&r2=1745677&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/AbstractListMediator.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/AbstractListMediator.java
Thu May 26 23:14:02 2016
@@ -19,10 +19,7 @@
package org.apache.synapse.mediators;
-import org.apache.synapse.ManagedLifecycle;
-import org.apache.synapse.Mediator;
-import org.apache.synapse.MessageContext;
-import org.apache.synapse.SynapseLog;
+import org.apache.synapse.*;
import org.apache.synapse.core.SynapseEnvironment;
import org.apache.synapse.core.axis2.Axis2MessageContext;
import org.apache.synapse.transport.passthru.util.RelayUtils;
@@ -59,7 +56,7 @@ public abstract class AbstractListMediat
if (contentAware) {
try {
- RelayUtils.buildMessage(((Axis2MessageContext)
synCtx).getAxis2MessageContext(),false);
+ RelayUtils.buildMessage(((Axis2MessageContext)
synCtx).getAxis2MessageContext(), false);
} catch (Exception e) {
handleException("Error while building message", e, synCtx);
}
@@ -72,6 +69,10 @@ public abstract class AbstractListMediat
return false;
}
}
+ } catch (SynapseException e) {
+ throw e;
+ } catch (Exception e) {
+ handleException("Runtime error occurred while mediating the
message", e, synCtx);
} finally {
synCtx.setTracingState(parentsEffectiveTraceState);
}