Lukasz Lenart created WW-5699:
---------------------------------

             Summary: Remove the deprecated DENY_INDEXED_ACCESS_EXECUTION 
constant
                 Key: WW-5699
                 URL: https://issues.apache.org/jira/browse/WW-5699
             Project: Struts 2
          Issue Type: Task
          Components: Core
            Reporter: Lukasz Lenart
             Fix For: 8.0.0


{{ReflectionContextState.DENY_INDEXED_ACCESS_EXECUTION}} is deprecated in 7.4.0 
by WW-5697 and should be removed here.

The constant is read in exactly one place, 
{{XWorkMethodAccessor.callMethod(...)}}, and is never written anywhere in main 
source, so it has never had any effect at runtime. WW-5697 replaced the check 
it was nominally guarding — a name-prefix and argument-count test — with a real 
indexed-property check, which leaves the constant with no purpose at all.

It was not removed in 7.4.0 only because it is {{public}} API and something 
outside the framework may reference it. Removing it in a major release gives 
that code a deprecation cycle to react to.

h2. Scope

Delete the constant from {{ReflectionContextState}}, and drop the lookup and 
the surrounding {{exec}} check from {{XWorkMethodAccessor.callMethod(...)}} so 
that a genuine indexed property accessor is simply invoked. The 
{{DENY_METHOD_EXECUTION}} fallthrough below it is unaffected and remains the 
control for every other method call.



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

Reply via email to