Groovy 2.4 中的 WSO2ESB 脚本

WSO2ESB scripting in Groovy 2.4

我想使用 groovy 2.4 作为我在 WSO2ESB 中的脚本语言。 我已将 groovy-all 2.4 添加到 libS,但看起来 wso2esb 完全忽略了突触中的脚本。

wso2esb 4.8.1 是否支持 groovy2.4? 我该如何整合它?

你把 groovy-all jar 放在哪里了?

我在 $CARBON_HOME/repository/components/lib 中添加了 groovy-all-2.4.4.jar,它似乎工作正常。

下面是一个示例代理,您可以使用它来检查 ESB 正在选择的 groovy 版本:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="groovytest"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
         <script language="groovy">def  version = GroovySystem.version
mc.setProperty("groovyVersion",version);</script>
         <payloadFactory media-type="xml">
            <format>
               <r:response xmlns:r="http://test/response">
                  <r:groovyVersion></r:groovyVersion>
               </r:response>
            </format>
            <args>
               <arg evaluator="xml" expression="get-property('groovyVersion')"/>
            </args>
         </payloadFactory>
         <respond/>
      </inSequence>
   </target>
   <description/>
</proxy>

当我从 "TryIt" 页面调用时,我得到以下答复:

<r:response xmlns:r="http://test/response">
   <r:groovyVersion>2.4.4</r:groovyVersion>
</r:response>