You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2007/09/05 16:37:37 UTC

[jira] Closed: (EL-8) [el] Implementation of parseExpression does not implement spec

     [ https://issues.apache.org/jira/browse/EL-8?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henri Yandell closed EL-8.
--------------------------

    Resolution: Fixed

Thanks Jamie; I've gone ahead and applied the patch (at long last!).

 svn ci -m "Applying Jamie Taylor's patch from EL-8 - EL now correctly implements the spec and is not affected when the function map is later modified"

Sending        NOTICE.txt
Sending        src/java/org/apache/commons/el/ArraySuffix.java
Sending        src/java/org/apache/commons/el/BinaryOperatorExpression.java
Adding         src/java/org/apache/commons/el/BoundFunctionInvocation.java
Sending        src/java/org/apache/commons/el/ComplexValue.java
Sending        src/java/org/apache/commons/el/ConditionalExpression.java
Sending        src/java/org/apache/commons/el/Expression.java
Sending        src/java/org/apache/commons/el/ExpressionEvaluatorImpl.java
Sending        src/java/org/apache/commons/el/ExpressionString.java
Sending        src/java/org/apache/commons/el/FunctionInvocation.java
Sending        src/java/org/apache/commons/el/Literal.java
Sending        src/java/org/apache/commons/el/NamedValue.java
Sending        src/java/org/apache/commons/el/UnaryOperatorExpression.java
Sending        src/java/org/apache/commons/el/ValueSuffix.java
Adding         src/test/org/apache/commons/el/FunctionBindingTest.java
Transmitting file data ...............
Committed revision 572959.

> [el] Implementation of parseExpression does not implement spec
> --------------------------------------------------------------
>
>                 Key: EL-8
>                 URL: https://issues.apache.org/jira/browse/EL-8
>             Project: Commons EL
>          Issue Type: Bug
>    Affects Versions: 1.0
>         Environment: Operating System: All
> Platform: All
>            Reporter: Jamie Taylor
>            Assignee: Henri Yandell
>             Fix For: 1.1
>
>         Attachments: EL-8-Jamie.patch, EL-8.patch, function-binding.txt, TestFunctionBinding.java, TestFunctionBinding.java
>
>
> The implementation of parseExpression in the EL expression evaluator does not conform to the JSP 2.0 specification.  The javadoc for the fMapper argument states that 
> "The ExpressionEvaluatormustnotholdontotheFunctionMapperreferenceafter returning fromparseExpression(). TheExpression object returned must invoke the same functions regardless of whether the mappings in the providedFunctionMapper instance change between calling ExpressionEvaluator.parseExpression() andExpression.evaluate()."
> The test case which I will attach clearly shows that this is not the case.
> Why hasn't anybody noticed this before, you may ask?  I suspect that the current implementation of Tomcat never updates the bindings in its function mapper once one is constructed, since the functions are defined at web-app load time and can't be updated after that.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.