On 31/12/2009 17:55, bugzi...@apache.org wrote: > https://issues.apache.org/bugzilla/show_bug.cgi?id=43819 > > --- Comment #17 from Mark Thomas <ma...@apache.org> 2009-12-31 09:55:14 GMT > --- > (In reply to comment #16) >> I think package org.apache.jasper.compiler needs some changes too, though >> this >> might not be in the scope of this bug. > > Correct. This discussion should be continued on the dev list. > >> The ELParser class seems to parse >> expressions using its own internal parsing mechanism > > As far as I recall (and it is a while since I looked at the EL code) that > parser just parses something - eg an attribute value - into bits that are an > expression and bits that are not. It doesn't parse the actual expressions.
This isn't quite correct. The Jasper parser currently looks at: - type of expression (${...}, #{...} or none - functions in the expression >> and doesn't support syntax for method invocations which is part of EE6. > > Nothing does yet. That is still on the Tomcat 7 todo list. Oddly enough I am > working on it at the moment. First step will be to update the jtt file. > >> To eliminate redundancy, the code should probably be refactored to use an >> expression factory instead. > > I'm not sure that refactoring is needed. My first attempt to add method invocation support hit an issue in that the Jasper parser thought it was a function. In an effort of avoid adding method invocation support to the Jasper parser and the EL parser, I am now looking at this re-factoring. There is an issue in that the EL parser does not provide a mechanism to distinguish between ${...} and #{...} so Jasper will have to do a little parsing. I've refactored this part and am currently looking to see if I can refactor the function validation code to use the EL parser. My current ideas are around using a function mapper that checks the TLDs when resolve() is called during the parsing process but I haven't had a chance to try coding it yet. Hopefully, I'll get some time early this week. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org