I tried to use the o.a.c.s JEXL Context/Evaluator with an implementation of
the <script> element. I want to make the <script> implemenation independent
of the expression languange. But unfortunately it seems to me that EL is not
useful (e.g. does not support assignments) and Jexl has some shortcomings:
1) I tried a script with multiple statements, like:
<script>
x = y;
y = 3;
</script>
While executing this script I get:
WARNUNG: The JEXL Expression created will be a reference to the first
expression from the supplied script: "
x = y;
y = 3;"
Does the JEXL implementation not support multiple statements per expression?
2) Unfortunately the o.a.c.s JexlEvaluator#eval() generates an
"effectiveContext" (to implement the scope chain) and passes it to the JEXL
expression for execution. Thus any modification taken by the script (like
any assingments as "x = y") will modify the "effectiveContext", not the
actual state context. After executing "x=y", "x" remains unchanged within
the states context.
Is the JexlContext implemenatation useful for a <script> implementation at
all from this perspective?
- Ingmar.