[jboss-svn-commits] JBL Code SVN: r30626 - labs/jbossesb/branches/JBESB_4_7_CP/product/rosetta/src/org/jboss/soa/esb/actions/scripting.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Dec 14 10:58:18 EST 2009


Author: tfennelly
Date: 2009-12-14 10:58:18 -0500 (Mon, 14 Dec 2009)
New Revision: 30626

Modified:
   labs/jbossesb/branches/JBESB_4_7_CP/product/rosetta/src/org/jboss/soa/esb/actions/scripting/GroovyActionProcessor.java
Log:
https://jira.jboss.org/jira/browse/JBESB-3048
GroovyActionProcessor script variable assignment is not thread safe

Modified: labs/jbossesb/branches/JBESB_4_7_CP/product/rosetta/src/org/jboss/soa/esb/actions/scripting/GroovyActionProcessor.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_7_CP/product/rosetta/src/org/jboss/soa/esb/actions/scripting/GroovyActionProcessor.java	2009-12-14 15:40:31 UTC (rev 30625)
+++ labs/jbossesb/branches/JBESB_4_7_CP/product/rosetta/src/org/jboss/soa/esb/actions/scripting/GroovyActionProcessor.java	2009-12-14 15:58:18 UTC (rev 30626)
@@ -131,8 +131,9 @@
      * scriptPath - The path to the script that will be run
      * script - the name of the script that will be run (include .groovy exception)
      */
-    public Message process(Message message) throws ActionProcessingException {
+    public synchronized Message process(Message message) throws ActionProcessingException {
         try {
+        	Script execScript = getScript(message);
             // create a Java/Groovy binding for the message object
             //
             Binding binding = new Binding();
@@ -144,13 +145,10 @@
             binding.setVariable("payloadProxy", payloadProxy);
             binding.setVariable("logger", logger);
 
-            Script execScript = getScript(message);
-            Object returnVal;
-            synchronized (execScript) {
-                execScript.setBinding(binding);
-                returnVal = execScript.run();
-            }
+            execScript.setBinding(binding);
 
+            Object returnVal = execScript.run();
+
             if(returnVal instanceof Message) {
                 return (Message) returnVal;
             } else {



More information about the jboss-svn-commits mailing list