https://bz.apache.org/bugzilla/show_bug.cgi?id=64872

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement

--- Comment #1 from Mark Thomas <ma...@apache.org> ---
Moving this to an enhancement.

Section JSP.2.9 of the JSP specification sets out how references such as
"hotFudge" are to be resolved. Enums are resolved at step 4 (static fields).
For the optimisation to be valid, the compiler needs to be sure that "hotFudge"
will not be resolved in steps 1, 2 or 3.

Step 1 is simple to eliminate. It is the ImplicitObjectELResolver as long as
the name does not match one of the implicit objects then the compiler knows in
advance that this step won't resolve the reference.

Step 2 is potentially problematic. For on-request compilation the compiler can
check whether any resolvers have been added and - possibly - whether one of
those resolvers would resolve the reference or not. Pre-compilation is more
difficult as the compiler cannot know in advance if a resolver is going to be
added via JspApplicationContext.addELResolver(ELResolver) as resolvers may be
added by components of which the JSP compiler is not aware.

Step 3 is simple to eliminate as, for a single attribute, the Stream EL
resolver will not be used.

What is the proposed solution for step 2?

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to