I'm trying to use ArrayList in a script task: <scriptTask id="scripttask1" name="script task" scriptFormat="javascript" activiti:autoStoreVariables="false"> <script> myList = Packages.java.util.ArrayList myList.add("test value 1"); execution.setVariable("myList", myList); </script> </scriptTask> Keeps getting error while running the flow: [error] application - problem evaluating script: sun.org.mozilla.javascript.internal.EvaluatorException: Java class "java.util.ArrayList" has no public instance field or method named "add". (<Unknown source>#2) in <Unknown source> at line number 2 [error] application - org.activiti.engine.impl.scripting.ScriptingEngines.evaluate(ScriptingEngines.java:89) org.activiti.engine.impl.scripting.ScriptingEngines.evaluate(ScriptingEngines.java:73) org.activiti.engine.impl.bpmn.behavior.ScriptTaskActivityBehavior.execute(ScriptTaskActivityBehavior.java:63) … … Can anyone help with this, please?
Are you using the Rhino (JDK6 or 7) or the Nashorn (JDK8) script engine? In Nashorn the following script works;
<javascript> var ArrayList = Java.type('java.util.ArrayList'); var myList = new ArrayList(); myList.add("test value 1"); execution.setVariable("myList", myList); </javascript>