Flowable - Groovy script evaluation failed error

39 Views Asked by At

i have this script on groovy. I want to generate an html file to reuse it as a variable in other steps of the workflow.

this is my script where i create the html:

def html = ''
execution.setVariable("note_read", "unknown") 
def table = '<table style="border-width: 0px; border-image: initial; background: #d9d9d9; font: 12px Arial, sans-serif; width: 100%; height: 172px; border-color: #dddddd initial #dddddd initial; border-style: solid initial solid initial;">'
def endtable = '</table>'
def tbody = '<tbody>'
def endtbody = '</tbody>'

def riga (nomeriga, valoreriga)  {

def var = '<tr style="height: 17px;">'
var = var+'<td style="padding: 3px 5px; width: 33%; vertical-align: text-top; height: 17px;">'
var = var+'<strong>'+nomeriga+'</strong> : '+valoreriga+'</td>'
var = var+'</tr>'

println "${var}
return var
}

def create_table_ambito1 () {
def t = t+table
t=t+tbody
t=t+riga('Ambito di competenza :','${so_type}')
t=t+riga('Descrizione :','${so_desc}')
t=t+riga('Ha svolto in passato un ruolo di Amministratore di Sistema Operativo?','${so_ruolop}')

if(${so_ruolop} == 'SI')
{
t=t+riga('Descrizione ruolo svolto in passato','${so_ruolopDesc}')
}

t=t+riga('Certificazioni Tecniche a supporto della richiesta :','${so_cert}')

if(${so_cert} == 'SI'){
t=t+riga('Descrizione Certificazioni Tecniche a supporto della richiesta :','${so_cert_desc}')
}

t=t+riga('Ha seguito un corso di formazione?', '${so_corsi}')
if(${so_corsi} == 'SI') {
t=t+riga('Descrizione corsi svolti','${so_corsi_desc}')
}

t=t+endtbody
t=t+endtable

println(${t}
return t

}

if(${so} == 'amm_so'){
create_table_ambito1()
html = html+create_table_ambito1()
}
execution.setVariable("note_read",html)

But when i run the workflow, flowable return this error:

Caused by: javax.script.ScriptException: javax.script.ScriptException: groovy.lang.MissingMethodException: No signature of method: org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.$() is applicable for argument types: (Script16$_run_closure1) values: [Script16$_run_closure1@6fd12dde]
2024-02-23 17:54:31 Possible solutions: is(java.lang.Object), any(), get(java.lang.String), any(groovy.lang.Closure), tap(groovy.lang.Closure), use([Ljava.lang.Object;)
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:164) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source) ~[java.scripting:na]
2024-02-23 17:54:31     at org.flowable.common.engine.impl.scripting.ScriptingEngines.evaluate(ScriptingEngines.java:111) ~[flowable-engine-common-6.8.0.jar:6.8.0]
2024-02-23 17:54:31     ... 119 common frames omitted
2024-02-23 17:54:31 Caused by: javax.script.ScriptException: groovy.lang.MissingMethodException: No signature of method: org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.$() is applicable for argument types: (Script16$_run_closure1) values: [Script16$_run_closure1@6fd12dde]
2024-02-23 17:54:31 Possible solutions: is(java.lang.Object), any(), get(java.lang.String), any(groovy.lang.Closure), tap(groovy.lang.Closure), use([Ljava.lang.Object;)
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:334) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:161) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     ... 121 common frames omitted
2024-02-23 17:54:31 Caused by: groovy.lang.MissingMethodException: No signature of method: org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.$() is applicable for argument types: (Script16$_run_closure1) values: [Script16$_run_closure1@6fd12dde]
2024-02-23 17:54:31 Possible solutions: is(java.lang.Object), any(), get(java.lang.String), any(groovy.lang.Closure), tap(groovy.lang.Closure), use([Ljava.lang.Object;)
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.callGlobal(GroovyScriptEngineImpl.java:418) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.access$100(GroovyScriptEngineImpl.java:89) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl$3.invokeMethod(GroovyScriptEngineImpl.java:317) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at org.codehaus.groovy.vmplugin.v8.IndyInterface.selectMethod(IndyInterface.java:346) ~[groovy-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:318) ~[groovy-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     at Script16.run(Script16.groovy:49) ~[na:na]
2024-02-23 17:54:31     at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:331) ~[groovy-jsr223-4.0.3.jar:4.0.3]
2024-02-23 17:54:31     ... 122 common frames omitted
2024-02-23 17:54:31

i've checked and tried to modify the strings like above but the error persist. i want to assign to "html" the html generated by the script.

but this is my first script in groovy and i don't understand the error generated by flowable, sorry for my english.

0

There are 0 best solutions below