Author: mckierna
Date: Fri Apr 13 00:49:18 2007
New Revision: 528378

URL: http://svn.apache.org/viewvc?view=rev&rev=528378
Log:
See http://issues.apache.org/jira/browse/SANDESHA2-83

Modified:
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InvokerWorker.java

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InvokerWorker.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InvokerWorker.java?view=diff&rev=528378&r1=528377&r2=528378
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InvokerWorker.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InvokerWorker.java
 Fri Apr 13 00:49:18 2007
@@ -60,7 +60,15 @@
                                transaction.commit();
                                transaction = null;
                        }
-                       
+                                       
+                       //starting a transaction for the invocation work.
+                       transaction = storageManager.getTransaction();
+                       // Depending on the transaction  support, the service 
will be invoked only once. 
+                       // Therefore we delete the invoker bean and message 
now, ahead of time
+                       invokerBeanMgr.delete(messageContextKey);
+                       // removing the corresponding message context as well.
+                       storageManager.removeMessageContext(messageContextKey);
+
                        try {
 
                                boolean postFailureInvocation = false;
@@ -95,10 +103,10 @@
 
                                handleFault(msgToInvoke, e);
                        }
-                               
-                       //starting a transaction for the post-invocation work.
-                       transaction = storageManager.getTransaction();
-                                               
+
+
+
+                       
                        if (rmMsg.getMessageType() == 
Sandesha2Constants.MessageTypes.APPLICATION) {
                                Sequence sequence = (Sequence) rmMsg
                                                
.getMessagePart(Sandesha2Constants.MessageParts.SEQUENCE);
@@ -127,13 +135,6 @@
                                }
                        }
                        
-                       // Service will be invoked only once. I.e. even if an
-                       // exception get thrown in invocation
-                       // the service will not be invoked again.
-                       invokerBeanMgr.delete(messageContextKey);
-
-                       // removing the corresponding message context as well.
-                       storageManager.removeMessageContext(messageContextKey);
                        
                        if(!ignoreNextMsg){
                                // updating the next msg to invoke



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to