Hi Adrianc,

testBsh service still be used by some places which causes the
/webtools/control/ServiceList request does not work.

Regards,
Chatree Srichart

On Tue, Mar 6, 2012 at 9:06 PM, <[email protected]> wrote:

> Author: adrianc
> Date: Tue Mar  6 14:06:13 2012
> New Revision: 1297478
>
> URL: http://svn.apache.org/viewvc?rev=1297478&view=rev
> Log:
> More JSR-223 work - added a bsh engine so that bsh-specific code can be
> eliminated. Bsh is now invoked using JSR-223.
>
> The engine comes from http://java.net/projects/scripting. I had to modify
> the code slightly because the BshScriptEngine implemented Compilable - but
> the Compilable methods were not implemented. So I removed implements
> Compilable. I renamed the jar to signify that the code has been modified.
>
> Added:
>    ofbiz/trunk/framework/base/lib/bsh-engine-modified.jar   (with props)
>
>  
> ofbiz/trunk/framework/base/src/META-INF/services/javax.script.ScriptEngineFactory
> Modified:
>    ofbiz/trunk/LICENSE
>    ofbiz/trunk/framework/base/src/org/ofbiz/base/util/ScriptUtil.java
>    ofbiz/trunk/framework/common/servicedef/services_test.xml
>
> Modified: ofbiz/trunk/LICENSE
> URL:
> http://svn.apache.org/viewvc/ofbiz/trunk/LICENSE?rev=1297478&r1=1297477&r2=1297478&view=diff
>
> ==============================================================================
> --- ofbiz/trunk/LICENSE (original)
> +++ ofbiz/trunk/LICENSE Tue Mar  6 14:06:13 2012
> @@ -505,6 +505,7 @@ The following libraries distributed with
>  BSD License:
>  ofbiz/trunk/applications/content/lib/dom4j-1.6.1.jar
>  ofbiz/trunk/framework/base/lib/antisamy-bin.1.2.jar
> +ofbiz/trunk/framework/base/lib/bsh-engine-modified.jar
>  ofbiz/trunk/framework/base/lib/freemarker-2.3.10.jar
>  ofbiz/trunk/framework/base/lib/hamcrest-all-1.2.jar
>  ofbiz/trunk/framework/base/lib/httpunit.jar
>
> Added: ofbiz/trunk/framework/base/lib/bsh-engine-modified.jar
> URL:
> http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/lib/bsh-engine-modified.jar?rev=1297478&view=auto
>
> ==============================================================================
> Binary file - no diff available.
>
> Propchange: ofbiz/trunk/framework/base/lib/bsh-engine-modified.jar
>
> ------------------------------------------------------------------------------
>    svn:mime-type = application/octet-stream
>
> Added:
> ofbiz/trunk/framework/base/src/META-INF/services/javax.script.ScriptEngineFactory
> URL:
> http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/META-INF/services/javax.script.ScriptEngineFactory?rev=1297478&view=auto
>
> ==============================================================================
> ---
> ofbiz/trunk/framework/base/src/META-INF/services/javax.script.ScriptEngineFactory
> (added)
> +++
> ofbiz/trunk/framework/base/src/META-INF/services/javax.script.ScriptEngineFactory
> Tue Mar  6 14:06:13 2012
> @@ -0,0 +1 @@
> +bsh.engine.BshScriptEngineFactory
>
> Modified:
> ofbiz/trunk/framework/base/src/org/ofbiz/base/util/ScriptUtil.java
> URL:
> http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/util/ScriptUtil.java?rev=1297478&r1=1297477&r2=1297478&view=diff
>
> ==============================================================================
> --- ofbiz/trunk/framework/base/src/org/ofbiz/base/util/ScriptUtil.java
> (original)
> +++ ofbiz/trunk/framework/base/src/org/ofbiz/base/util/ScriptUtil.java Tue
> Mar  6 14:06:13 2012
> @@ -190,10 +190,6 @@ public final class ScriptUtil {
>         if (scriptClass != null) {
>             return InvokerHelper.createScript(scriptClass,
> GroovyUtil.getBinding(inputMap)).run();
>         }
> -        // TODO: Remove beanshell check when all beanshell code has been
> removed.
> -        if ("bsh".equals(language)) {
> -            return BshUtil.eval(script,
> UtilMisc.makeMapWritable(inputMap));
> -        }
>         try {
>             CompiledScript compiledScript = compileScriptString(language,
> script);
>             if (compiledScript != null) {
> @@ -311,11 +307,6 @@ public final class ScriptUtil {
>     public static Object executeScript(String filePath, String
> functionName, Map<String, ? extends Object> context, Object[] args) {
>         Assert.notNull("filePath", filePath, "context", context);
>         try {
> -            String fileExtension = getFileExtension(filePath);
> -            // TODO: Remove beanshell check when all beanshell code has
> been removed.
> -            if ("bsh".equals(fileExtension)) {
> -                return BshUtil.runBshAtLocation(filePath, context);
> -            }
>             return executeScript(filePath, functionName,
> createScriptContext(context), args);
>         } catch (Exception e) {
>             String errMsg = "Error running script at location [" +
> filePath + "]: " + e.toString();
>
> Modified: ofbiz/trunk/framework/common/servicedef/services_test.xml
> URL:
> http://svn.apache.org/viewvc/ofbiz/trunk/framework/common/servicedef/services_test.xml?rev=1297478&r1=1297477&r2=1297478&view=diff
>
> ==============================================================================
> --- ofbiz/trunk/framework/common/servicedef/services_test.xml (original)
> +++ ofbiz/trunk/framework/common/servicedef/services_test.xml Tue Mar  6
> 14:06:13 2012
> @@ -160,12 +160,6 @@ under the License.
>         <attribute name="result" type="String" mode="OUT"/>
>     </service>
>
> -    <service name="testBsh" engine="bsh"
> location="component://common/script/org/ofbiz/common/BshServiceTest.bsh"
> invoke="">
> -        <description>Test BeanShell Script Service</description>
> -        <attribute name="message" type="String" mode="IN"
> optional="true"/>
> -        <attribute name="result" type="String" mode="OUT"/>
> -    </service>
> -
>     <service name="testGroovy" engine="groovy"
> location="component://common/script/org/ofbiz/common/GroovyServiceTest.groovy"
> invoke="">
>         <description>Test Groovy Script Service</description>
>         <attribute name="message" type="String" mode="IN" optional="true"/>
> @@ -178,6 +172,12 @@ under the License.
>         <attribute name="result" type="String" mode="OUT"/>
>     </service>
>
> +    <service name="testScriptEngineBsh" engine="script"
> location="component://common/script/org/ofbiz/common/BshServiceTest.bsh"
> invoke="">
> +        <description>Test BeanShell Script Service</description>
> +        <attribute name="message" type="String" mode="IN"
> optional="true"/>
> +        <attribute name="result" type="String" mode="OUT"/>
> +    </service>
> +
>     <service name="testScriptEngineGroovy" engine="script"
> location="component://common/script/org/ofbiz/common/GroovyServiceTest.groovy"
> invoke="">
>         <description>Test Script Engine With Groovy Script</description>
>         <attribute name="message" type="String" mode="IN" optional="true"/>
> @@ -196,13 +196,11 @@ under the License.
>         <attribute name="result" type="String" mode="OUT"/>
>     </service>
>
> -    <!-- JavaScript function invocations are not working, so commenting
> this out for now
>     <service name="testScriptEngineJavaScriptFunction" engine="script"
> location="component://common/script/org/ofbiz/common/JavaScriptTest.js"
> invoke="testFunction">
>         <description>Test Script Engine With JavaScript Function
> Invocation</description>
>         <attribute name="message" type="String" mode="IN" optional="true"/>
>         <attribute name="result" type="String" mode="OUT"/>
>     </service>
> -     -->
>
>     <service name="testJMSQueue" engine="jms" location="serviceMessenger"
> invoke="testScv">
>         <description>Test JMS Queue service</description>
>
>
>

Reply via email to