You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by va...@apache.org on 2019/05/29 00:21:14 UTC

svn commit: r1860310 - /synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java

Author: vanji
Date: Wed May 29 00:21:14 2019
New Revision: 1860310

URL: http://svn.apache.org/viewvc?rev=1860310&view=rev
Log:
SYNAPSE-1103 : Captured Synapse Exception to and pop Fault message.

Modified:
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java?rev=1860310&r1=1860309&r2=1860310&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/sampler/SamplingJob.java Wed May 29 00:21:14 2019
@@ -23,6 +23,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.synapse.Mediator;
 import org.apache.synapse.MessageContext;
+import org.apache.synapse.SynapseException;
 import org.apache.synapse.message.processors.MessageProcessorConsents;
 import org.apache.synapse.message.processors.ScheduledMessageProcessor;
 import org.apache.synapse.message.store.MessageStore;
@@ -79,7 +80,12 @@ public class SamplingJob implements Job
                                 if (processingSequence != null) {
                                     processingSequence.mediate(messageContext);
                                 }
-                            } catch (Throwable t) {
+                            } catch (SynapseException synError){
+                                if (!messageContext.getFaultStack().isEmpty()) {
+                                    messageContext.getFaultStack().pop().handleFault(messageContext,synError);
+                                }
+                                log.error("Error occurred while executing the message", synError);
+                            }catch (Throwable t) {
                                 log.error("Error occurred while executing the message", t);
                             }
                         }