You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by mc...@apache.org on 2007/09/19 16:59:57 UTC

svn commit: r577324 - in /webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2: handlers/SandeshaInHandler.java msgprocessors/SequenceProcessor.java

Author: mckierna
Date: Wed Sep 19 07:59:57 2007
New Revision: 577324

URL: http://svn.apache.org/viewvc?rev=577324&view=rev
Log:
More transport issues 

Modified:
    webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
    webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java

Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java?rev=577324&r1=577323&r2=577324&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java Wed Sep 19 07:59:57 2007
@@ -23,7 +23,6 @@
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.description.Parameter;
 import org.apache.axis2.handlers.AbstractHandler;
-import org.apache.axis2.transport.RequestResponseTransport;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.sandesha2.MessageValidator;
@@ -127,7 +126,7 @@
 			AckRequestedProcessor reqProcessor = new AckRequestedProcessor();
 			if(reqProcessor.processAckRequestedHeaders(rmMsgCtx)){
 				returnValue = InvocationResponse.SUSPEND;
-				msgCtx.setProperty(RequestResponseTransport.HOLD_RESPONSE, Boolean.TRUE);
+				//msgCtx.setProperty(RequestResponseTransport.HOLD_RESPONSE, Boolean.TRUE);
 			}
 			
 			// Process MessagePending headers

Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java?rev=577324&r1=577323&r2=577324&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java Wed Sep 19 07:59:57 2007
@@ -381,11 +381,15 @@
 		// transactional delivery. Either way, if they have one we should use it.
 		SandeshaThread invoker = storageManager.getInvoker();
 		if (invoker != null) {
-		    //Whatever the MEP, we stop processing here and the invoker will do the real work. As we
-		    // are taking responsibility for the message we need to return SUSPEND
-		    result = InvocationResponse.SUSPEND;
+			// Whatever the MEP, we stop processing here and the invoker will do the real work. We only
+			// SUSPEND if we need to keep the backchannel open for the response... we may as well ABORT
+			// to let other cases end more quickly.
+			if(backchannelFree && ackBackChannel) {
+				result = InvocationResponse.ABORT;
+			} else {
+				result = InvocationResponse.SUSPEND;
+			}
 		    
-	        msgCtx.setProperty(RequestResponseTransport.HOLD_RESPONSE, Boolean.TRUE);
 			InvokerBeanMgr storageMapMgr = storageManager.getInvokerBeanMgr();
 
 			storageManager.storeMessageContext(key, rmMsgCtx.getMessageContext());



---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org