[jboss-svn-commits] JBL Code SVN: r15874 - labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Oct 17 06:57:55 EDT 2007


Author: kevin.conner at jboss.com
Date: 2007-10-17 06:57:55 -0400 (Wed, 17 Oct 2007)
New Revision: 15874

Modified:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/MessageAwareListener.java
Log:
Allow fault messages in the pipeline: JBESB-1186

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/MessageAwareListener.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/MessageAwareListener.java	2007-10-17 09:57:11 UTC (rev 15873)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/MessageAwareListener.java	2007-10-17 10:57:55 UTC (rev 15874)
@@ -36,6 +36,7 @@
 import org.jboss.soa.esb.couriers.CourierFactory;
 import org.jboss.soa.esb.couriers.CourierTimeoutException;
 import org.jboss.soa.esb.couriers.CourierUtil;
+import org.jboss.soa.esb.couriers.FaultMessageException;
 import org.jboss.soa.esb.couriers.TwoWayCourier;
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.listeners.ListenerTagNames;
@@ -262,7 +263,7 @@
 
 	public void waitForEventAndProcess (long maxWaitMillis)
 	{
-		final Message message ;
+		Message message = null ;
 		try
 		{
 			message = (maxWaitMillis > 0) ? _pickUpCourier
@@ -273,6 +274,10 @@
 		{
 			return;
 		}
+		catch (FaultMessageException fme)
+		{
+			message = fme.getReturnedMessage() ;
+		}
 		catch (CourierException e)
 		{
                         _logger.debug("Courier Exception", e);
@@ -291,10 +296,11 @@
 
 		if (null != message)
 		{
+                    final Message pipelineMessage = message ;
                     final Runnable pipelineRunner = new Runnable() {
                         public void run() {
                             try {
-                                pipeline.process(message) ;
+                                pipeline.process(pipelineMessage) ;
                             } finally {
                                 updateThreadCount(-1) ;
                             }




More information about the jboss-svn-commits mailing list