[
https://issues.apache.org/jira/browse/JEXL-105?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12973731#action_12973731
]
Henri Biestro commented on JEXL-105:
------------------------------------
Thanks for the test case, bug is confirmed.
Culprit is Interpreter#visit(ASTArrayLiteral node, Object data) which
wrongfully considers an array literal as a constant evaluation.
> Array creation 2nd time requires duplication of JexlEngine
> -----------------------------------------------------------
>
> Key: JEXL-105
> URL: https://issues.apache.org/jira/browse/JEXL-105
> Project: Commons JEXL
> Issue Type: Bug
> Affects Versions: 2.0.1
> Environment: JDK 1.6 SE on Windows XP
> Reporter: Cary Thompson
> Assignee: Henri Biestro
> Fix For: 2.0.2
>
>
> JexlContext context = new MapContext();
> Expression selectExp = new JexlEngine().createExpression("[a.propA]");
> context.set("a", new A("a1", "p1"));
> System.out.println(Arrays.toString((Object[])selectExp.evaluate(context)));
>
> -->[p1]
> //selectExp = new JexlEngine().createExpression("[a.propA]");
> context.set("a", new A("a2", "p2"));
> System.out.println(Arrays.toString((Object[])selectExp.evaluate(context)));
>
> --> [p1] correct answer should be [p2]
> // A's class definition
> public class A {
> String nameA;
>
> String propA;
> public A(String nameA, String propA) {
> this.nameA = nameA;
> this.propA = propA;
> }
> @Override
> public String toString() {
> return "A [nameA=" + nameA + ", propA=" + propA + "]";
> }
> public String getNameA() {
> return nameA;
> }
> public String getPropA() {
> return propA;
> }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.