Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
The javascript engine uses a global Javscript context (e.g. the "global" state) which retains its state across SCXML script evaluation execution.
The (currently default) custom feature of Commons SCXML to nest SCXML state contexts therefore cannot reliably be used for the Javascript language.
Note that the SCXML specification explicitely states that all datamodel state should be shared globally as well.
To retain the custom Commons SCXML feature, a new Evaluator characteristic is introduced which will specify if a specific (language) Evaluator requires a global context or not, which for the Javascript Evaluator (JSEvaluator) will be set to true.