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)