script task/javascript, How to add elements to ArrayList?
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-04-2015 08:18 PM
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?
<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?
Labels:
- Labels:
-
Archive
1 REPLY 1

Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-05-2015 05:38 AM
Hi Jin,
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>
Regards,
Yvo
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>
Regards,
Yvo
