[jboss-svn-commits] JBL Code SVN: r17949 - in labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb: listeners/message and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jan 18 08:11:51 EST 2008


Author: kevin.conner at jboss.com
Date: 2008-01-18 08:11:51 -0500 (Fri, 18 Jan 2008)
New Revision: 17949

Modified:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultFaultTo.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ActionProcessingPipeline.java
Log:
Fix oneway service fault handling: JBESB-1458

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultFaultTo.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultFaultTo.java	2008-01-18 13:10:26 UTC (rev 17948)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultFaultTo.java	2008-01-18 13:11:51 UTC (rev 17949)
@@ -40,15 +40,27 @@
      */
 	public static boolean initialiseReply(final Message message, final Call callDetails)
 	{
-		return DefaultReplyTo.initialiseReply(message, callDetails, getFaultTo(callDetails)) ;
+		return initialiseReply(message, callDetails, false) ;
 	}
+
+    /**
+     * Initialise the message as a reply to the specified call details.
+     * @param message The reply message.
+     * @param callDetails The call details used to generate the reply.
+     * @param oneWay True if this is a one way invocation.
+     * @return true if the message was initialised, false otherwise.
+     */
+    public static boolean initialiseReply(final Message message, final Call callDetails, final boolean oneWay)
+    {
+        return DefaultReplyTo.initialiseReply(message, callDetails, getFaultTo(callDetails, oneWay)) ;
+    }
 	
     /**
      * Get the appropriate faultTo address..
      * @param callDetails The call details used to generate the reply.
      * @return The faultTo address or null if none set.
      */
-	static EPR getFaultTo(final Call callDetails)
+	static EPR getFaultTo(final Call callDetails, final boolean oneWay)
 	{
 		if (callDetails == null)
 		{
@@ -60,9 +72,10 @@
 		{
 			return faultTo ;
 		}
-		else
+		else if (!oneWay)
 		{
 			return DefaultReplyTo.getReplyTo(callDetails) ;
 		}
+		return null ;
 	}
 }
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ActionProcessingPipeline.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ActionProcessingPipeline.java	2008-01-18 13:10:26 UTC (rev 17948)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ActionProcessingPipeline.java	2008-01-18 13:11:51 UTC (rev 17949)
@@ -457,9 +457,9 @@
 
 	private void faultTo(final Call callDetails, final Message message)
 	{
-		if (!DefaultFaultTo.initialiseReply(message, callDetails))
+		if (!DefaultFaultTo.initialiseReply(message, callDetails, oneWay))
 		{
-		    if (defaultProcessing)
+		    if (defaultProcessing || oneWay)
 		    {
 			LOGGER.warn("No fault address defined for fault message! " + callDetails);
 			sendToDLQ(callDetails, message, MessageType.fault) ;




More information about the jboss-svn-commits mailing list