History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: OGNL-19
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Minor Minor
Assignee: Jesse Kuhnert
Reporter: Marco Valverde
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
OGNL

expression concatenated via "and" / "&&" is not evaluated correctly

Created: 23/Mar/07 12:44 PM   Updated: 01/Apr/07 05:43 PM
Component/s: ExpressionCompiler
Affects Version/s: 2.7
Fix Version/s: 2.7

File Attachments: 1. Text File error_description_stacktrace.txt (13 kb)

Environment: tapestry


 Description  « Hide
having a condition like:

condition="ognl:condition1 && condition2"

condition2 gets evaluatated, even if condition1 returns false
in version 2.6.9 it worked correctly

the manual says explicitly:
e1 && e2, e1 and e2
getValue is called on e1 and the result is interpreted as a boolean. If false, that result is returned; if true, getValue is called on e2 and its value is returned.

 All   Comments   Change History      Sort Order:
Marco Valverde - [25/Mar/07 11:48 AM ]
sorry, i've added the wrong attachment here.

Jesse Kuhnert - [31/Mar/07 02:21 PM ]
There isn't a whole lot I can do about this one.. After the initial bytecode compilation step all conditions won't be evaluated, but I have to evaluate all paths at least once in order to build the expression and inspect the type information.

I'm not sure this is going to get done right away, but it's possible I could do a second pass compilation step when needed -> ie when it's possible to know the type information.