Lukasz Lenart created WW-5714:
---------------------------------

             Summary: Remove the deprecated Tiles OGNL attribute evaluator and 
its legacy opt-in flag
                 Key: WW-5714
                 URL: https://issues.apache.org/jira/browse/WW-5714
             Project: Struts 2
          Issue Type: Task
          Components: Plugin - Tiles
            Reporter: Lukasz Lenart
             Fix For: 8.0.0


Removal half of WW-5713.

WW-5713 deprecates the vendored 
{{org.apache.tiles.ognl.OGNLAttributeEvaluator}} in the Tiles plugin and makes 
the {{OGNL:}} expression language fail closed by default, with 
{{struts.tiles.ognl.legacy.enabled}} as an opt-in escape hatch restoring the 
legacy raw evaluator. The escape hatch is deliberately temporary: it needs a 
visible end date, or it becomes permanent.

This ticket removes it in 8.0.0:
* delete the vendored {{org.apache.tiles.ognl.OGNLAttributeEvaluator}}
* remove the {{struts.tiles.ognl.legacy.enabled}} constant and the plumbing 
that reads it
* remove the {{OGNL:}} language registration in 
{{StrutsTilesContainerFactory}}, along with any disabled-evaluator placeholder 
introduced by WW-5713

{{S2:}}, {{I18N:}} and {{EL:}} are unaffected. {{S2:}} remains the supported 
way to evaluate an expression against the value stack, and it is what the 
WW-5713 migration message already points users at.

Note when doing the removal: unregistering a language is not the same as 
removing support for it. {{BasicAttributeEvaluatorFactory}} is constructed with 
{{DirectAttributeEvaluator}} as its default, so an unregistered {{OGNL:}} 
prefix does not fail — the expression falls through and renders as literal page 
text. Whatever replaces the registration must keep failing loudly rather than 
silently rendering.

Same deprecate-then-remove shape as WW-5707 / WW-5708 for the legacy restful 
action mappers.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to