(struts) branch WW-5381-compoundroot-interface created (now 81239beda)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-compoundroot-interface
in repository https://gitbox.apache.org/repos/asf/struts.git


  at 81239beda WW-5381 Introduce RootAccessor interface for extension point

This branch includes the following new commits:

 new 81239beda WW-5381 Introduce RootAccessor interface for extension point

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




(struts) 01/01: WW-5381 Introduce RootAccessor interface for extension point

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5381-compoundroot-interface
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 81239beda9a69b52a66e3621658aea5614b1e67b
Author: Kusal Kithul-Godage 
AuthorDate: Fri Dec 29 13:39:14 2023 +1100

WW-5381 Introduce RootAccessor interface for extension point
---
 .../opensymphony/xwork2/ognl/OgnlValueStack.java| 21 +++--
 .../xwork2/ognl/OgnlValueStackFactory.java  |  6 +++---
 .../xwork2/ognl/accessor/CompoundRootAccessor.java  | 12 
 .../xwork2/ognl/accessor/RootAccessor.java  |  8 
 4 files changed, 30 insertions(+), 17 deletions(-)

diff --git 
a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java 
b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
index 9a0abd5b5..8c3b694d2 100644
--- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
+++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
@@ -24,17 +24,18 @@ import 
com.opensymphony.xwork2.conversion.impl.XWorkConverter;
 import com.opensymphony.xwork2.inject.Container;
 import com.opensymphony.xwork2.inject.Inject;
 import com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor;
+import com.opensymphony.xwork2.ognl.accessor.RootAccessor;
 import com.opensymphony.xwork2.util.ClearableValueStack;
 import com.opensymphony.xwork2.util.CompoundRoot;
 import com.opensymphony.xwork2.util.MemberAccessValueStack;
 import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.util.reflection.ReflectionContextState;
+import ognl.ClassResolver;
 import ognl.MethodFailedException;
 import ognl.NoSuchPropertyException;
 import ognl.Ognl;
 import ognl.OgnlContext;
 import ognl.OgnlException;
-import ognl.PropertyAccessor;
 import org.apache.commons.lang3.BooleanUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -83,7 +84,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
  */
 protected OgnlValueStack(ValueStack vs,
  XWorkConverter xworkConverter,
- CompoundRootAccessor accessor,
+ RootAccessor accessor,
  TextProvider prov,
  SecurityMemberAccess securityMemberAccess) {
 setRoot(xworkConverter,
@@ -98,19 +99,19 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 /**
  * @since 6.4.0
  */
-protected OgnlValueStack(XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, TextProvider prov, SecurityMemberAccess 
securityMemberAccess) {
+protected OgnlValueStack(XWorkConverter xworkConverter, RootAccessor 
accessor, TextProvider prov, SecurityMemberAccess securityMemberAccess) {
 this(null, xworkConverter, accessor, prov, securityMemberAccess);
 }
 
 /**
  * @since 6.4.0
  */
-protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, SecurityMemberAccess securityMemberAccess) {
+protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
RootAccessor accessor, SecurityMemberAccess securityMemberAccess) {
 this(vs, xworkConverter, accessor, null, securityMemberAccess);
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, CompoundRootAccessor, TextProvider, SecurityMemberAccess)} 
instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, RootAccessor, TextProvider, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(ValueStack vs,
@@ -122,7 +123,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(XWorkConverter, 
CompoundRootAccessor, TextProvider, SecurityMemberAccess)} instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(XWorkConverter, 
RootAccessor, TextProvider, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, TextProvider prov, boolean 
allowStaticFieldAccess) {
@@ -130,7 +131,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, CompoundRootAccessor, SecurityMemberAccess)} instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, RootAccessor, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, boolean allowStaticFieldAccess) {
@@ -145,7 +146,7 @@ public class OgnlVal

(struts) 01/01: WW-5381 Introduce RootAccessor interface for extension point

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5381-compoundroot-interface
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 8f4d9a6f6f9b1ca7e3bca4259ec49051b0962aca
Author: Kusal Kithul-Godage 
AuthorDate: Fri Dec 29 13:39:14 2023 +1100

WW-5381 Introduce RootAccessor interface for extension point
---
 .../opensymphony/xwork2/ognl/OgnlValueStack.java   | 21 
 .../xwork2/ognl/OgnlValueStackFactory.java |  6 ++---
 .../xwork2/ognl/accessor/CompoundRootAccessor.java | 12 ++---
 .../xwork2/ognl/accessor/RootAccessor.java | 29 ++
 4 files changed, 51 insertions(+), 17 deletions(-)

diff --git 
a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java 
b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
index 9a0abd5b5..8c3b694d2 100644
--- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
+++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java
@@ -24,17 +24,18 @@ import 
com.opensymphony.xwork2.conversion.impl.XWorkConverter;
 import com.opensymphony.xwork2.inject.Container;
 import com.opensymphony.xwork2.inject.Inject;
 import com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor;
+import com.opensymphony.xwork2.ognl.accessor.RootAccessor;
 import com.opensymphony.xwork2.util.ClearableValueStack;
 import com.opensymphony.xwork2.util.CompoundRoot;
 import com.opensymphony.xwork2.util.MemberAccessValueStack;
 import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.util.reflection.ReflectionContextState;
+import ognl.ClassResolver;
 import ognl.MethodFailedException;
 import ognl.NoSuchPropertyException;
 import ognl.Ognl;
 import ognl.OgnlContext;
 import ognl.OgnlException;
-import ognl.PropertyAccessor;
 import org.apache.commons.lang3.BooleanUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -83,7 +84,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
  */
 protected OgnlValueStack(ValueStack vs,
  XWorkConverter xworkConverter,
- CompoundRootAccessor accessor,
+ RootAccessor accessor,
  TextProvider prov,
  SecurityMemberAccess securityMemberAccess) {
 setRoot(xworkConverter,
@@ -98,19 +99,19 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 /**
  * @since 6.4.0
  */
-protected OgnlValueStack(XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, TextProvider prov, SecurityMemberAccess 
securityMemberAccess) {
+protected OgnlValueStack(XWorkConverter xworkConverter, RootAccessor 
accessor, TextProvider prov, SecurityMemberAccess securityMemberAccess) {
 this(null, xworkConverter, accessor, prov, securityMemberAccess);
 }
 
 /**
  * @since 6.4.0
  */
-protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, SecurityMemberAccess securityMemberAccess) {
+protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
RootAccessor accessor, SecurityMemberAccess securityMemberAccess) {
 this(vs, xworkConverter, accessor, null, securityMemberAccess);
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, CompoundRootAccessor, TextProvider, SecurityMemberAccess)} 
instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, RootAccessor, TextProvider, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(ValueStack vs,
@@ -122,7 +123,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(XWorkConverter, 
CompoundRootAccessor, TextProvider, SecurityMemberAccess)} instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(XWorkConverter, 
RootAccessor, TextProvider, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, TextProvider prov, boolean 
allowStaticFieldAccess) {
@@ -130,7 +131,7 @@ public class OgnlValueStack implements Serializable, 
ValueStack, ClearableValueS
 }
 
 /**
- * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, CompoundRootAccessor, SecurityMemberAccess)} instead.
+ * @deprecated since 6.4.0, use {@link #OgnlValueStack(ValueStack, 
XWorkConverter, RootAccessor, SecurityMemberAccess)} instead.
  */
 @Deprecated
 protected OgnlValueStack(ValueStack vs, XWorkConverter xworkConverter, 
CompoundRootAccessor accessor, boolean allowStaticFieldAccess) {
@@ -145,7 +146,7 @@ public class OgnlVa

(struts) branch WW-5381-compoundroot-interface updated (81239beda -> 8f4d9a6f6)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-compoundroot-interface
in repository https://gitbox.apache.org/repos/asf/struts.git


 discard 81239beda WW-5381 Introduce RootAccessor interface for extension point
 new 8f4d9a6f6 WW-5381 Introduce RootAccessor interface for extension point

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (81239beda)
\
 N -- N -- N   refs/heads/WW-5381-compoundroot-interface (8f4d9a6f6)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../xwork2/ognl/accessor/RootAccessor.java  | 21 +
 1 file changed, 21 insertions(+)



(struts) branch WW-5381-compoundroot-interface-2 created (now 61d261976)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-compoundroot-interface-2
in repository https://gitbox.apache.org/repos/asf/struts.git


  at 61d261976 WW-5381 Introduce extension point for CompoundRootAccessor

This branch includes the following new commits:

 new 61d261976 WW-5381 Introduce extension point for CompoundRootAccessor

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




(struts) 01/01: WW-5381 Introduce extension point for CompoundRootAccessor

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5381-compoundroot-interface-2
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 61d2619769a53106ab20a80939db4fbed20807d0
Author: Kusal Kithul-Godage 
AuthorDate: Fri Dec 29 13:46:05 2023 +1100

WW-5381 Introduce extension point for CompoundRootAccessor
---
 .../opensymphony/xwork2/config/impl/DefaultConfiguration.java  |  6 ++
 .../config/providers/StrutsDefaultConfigurationProvider.java   |  3 ---
 core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java  |  3 ++-
 .../com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java| 10 ++
 core/src/main/java/org/apache/struts2/StrutsConstants.java |  3 +++
 .../org/apache/struts2/config/StrutsBeanSelectionProvider.java |  6 --
 core/src/main/resources/struts-beans.xml   |  6 +-
 7 files changed, 18 insertions(+), 19 deletions(-)

diff --git 
a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
 
b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
index 4a6ee1373..e0b92b2bf 100644
--- 
a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
+++ 
b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
@@ -89,6 +89,7 @@ import com.opensymphony.xwork2.ognl.OgnlUtil;
 import com.opensymphony.xwork2.ognl.OgnlValueStackFactory;
 import com.opensymphony.xwork2.ognl.SecurityMemberAccess;
 import com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor;
+import com.opensymphony.xwork2.ognl.accessor.RootAccessor;
 import com.opensymphony.xwork2.util.CompoundRoot;
 import com.opensymphony.xwork2.util.OgnlTextParser;
 import com.opensymphony.xwork2.util.PatternMatcher;
@@ -100,8 +101,6 @@ import com.opensymphony.xwork2.util.fs.DefaultFileManager;
 import com.opensymphony.xwork2.util.fs.DefaultFileManagerFactory;
 import com.opensymphony.xwork2.util.location.LocatableProperties;
 import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
-import ognl.ClassResolver;
-import ognl.PropertyAccessor;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -390,8 +389,7 @@ public class DefaultConfiguration implements Configuration {
 .factory(TextParser.class, OgnlTextParser.class, 
Scope.SINGLETON)
 
 .factory(ObjectTypeDeterminer.class, 
DefaultObjectTypeDeterminer.class, Scope.SINGLETON)
-.factory(PropertyAccessor.class, CompoundRoot.class.getName(), 
CompoundRootAccessor.class, Scope.SINGLETON)
-.factory(ClassResolver.class, CompoundRoot.class.getName(), 
CompoundRootAccessor.class, Scope.SINGLETON)
+.factory(RootAccessor.class, CompoundRoot.class.getName(), 
CompoundRootAccessor.class, Scope.SINGLETON)
 
 .factory(ExpressionCacheFactory.class, 
DefaultOgnlExpressionCacheFactory.class, Scope.SINGLETON)
 .factory(BeanInfoCacheFactory.class, 
DefaultOgnlBeanInfoCacheFactory.class, Scope.SINGLETON)
diff --git 
a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
 
b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
index 20f3abce8..bf537899a 100644
--- 
a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
+++ 
b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
@@ -38,7 +38,6 @@ import com.opensymphony.xwork2.inject.ContainerBuilder;
 import com.opensymphony.xwork2.inject.Scope;
 import com.opensymphony.xwork2.ognl.ObjectProxy;
 import com.opensymphony.xwork2.ognl.OgnlReflectionContextFactory;
-import com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor;
 import com.opensymphony.xwork2.ognl.accessor.HttpParametersPropertyAccessor;
 import com.opensymphony.xwork2.ognl.accessor.ObjectAccessor;
 import com.opensymphony.xwork2.ognl.accessor.ObjectProxyPropertyAccessor;
@@ -55,7 +54,6 @@ import 
com.opensymphony.xwork2.security.DefaultExcludedPatternsChecker;
 import 
com.opensymphony.xwork2.security.DefaultNotExcludedAcceptedPatternsChecker;
 import com.opensymphony.xwork2.security.ExcludedPatternsChecker;
 import com.opensymphony.xwork2.security.NotExcludedAcceptedPatternsChecker;
-import com.opensymphony.xwork2.util.CompoundRoot;
 import com.opensymphony.xwork2.util.PatternMatcher;
 import com.opensymphony.xwork2.util.WildcardHelper;
 import com.opensymphony.xwork2.util.fs.DefaultFileManagerFactory;
@@ -145,7 +143,6 @@ public class StrutsDefaultConfigurationProvider implements 
ConfigurationProvider
 .factory(PropertyAccessor.class, Parameter.class.getName(), 
ParameterPropertyAccessor.class, Scope.SINGLETON)
 
 .factory(MethodAccessor.class, Object.class.getName(),

(struts) branch WW-5381-compoundroot-interface-2 updated (61d261976 -> 11f4fa3ce)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-compoundroot-interface-2
in repository https://gitbox.apache.org/repos/asf/struts.git


omit 61d261976 WW-5381 Introduce extension point for CompoundRootAccessor
 add 11f4fa3ce WW-5381 Introduce extension point for CompoundRootAccessor

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (61d261976)
\
 N -- N -- N   refs/heads/WW-5381-compoundroot-interface-2 
(11f4fa3ce)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java | 3 +--
 core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java| 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)



(struts) branch WW-5381-compoundroot-interface-2 updated (11f4fa3ce -> aef5d5c6c)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-compoundroot-interface-2
in repository https://gitbox.apache.org/repos/asf/struts.git


omit 11f4fa3ce WW-5381 Introduce extension point for CompoundRootAccessor
 add aef5d5c6c WW-5381 Introduce extension point for CompoundRootAccessor

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (11f4fa3ce)
\
 N -- N -- N   refs/heads/WW-5381-compoundroot-interface-2 
(aef5d5c6c)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../opensymphony/xwork2/interceptor/ParametersInterceptorTest.java | 5 ++---
 core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java  | 4 ++--
 .../test/java/com/opensymphony/xwork2/ognl/OgnlValueStackTest.java | 7 +++
 3 files changed, 7 insertions(+), 9 deletions(-)



(struts) 01/01: WW-5381 Introduce extension point for MethodAccessor

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5381-method-accessor
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 588d6fcc5c15a200d230ca051f75e87f0cb5c632
Author: Kusal Kithul-Godage 
AuthorDate: Fri Dec 29 14:06:28 2023 +1100

WW-5381 Introduce extension point for MethodAccessor
---
 .../config/providers/StrutsDefaultConfigurationProvider.java  |  2 +-
 .../com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java   | 11 +--
 core/src/main/java/org/apache/struts2/StrutsConstants.java|  3 +++
 .../apache/struts2/config/StrutsBeanSelectionProvider.java|  2 ++
 core/src/main/resources/struts-beans.xml  |  2 +-
 5 files changed, 12 insertions(+), 8 deletions(-)

diff --git 
a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
 
b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
index bf537899a..fdad8f020 100644
--- 
a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
+++ 
b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java
@@ -142,7 +142,7 @@ public class StrutsDefaultConfigurationProvider implements 
ConfigurationProvider
 .factory(PropertyAccessor.class, 
HttpParameters.class.getName(), HttpParametersPropertyAccessor.class, 
Scope.SINGLETON)
 .factory(PropertyAccessor.class, Parameter.class.getName(), 
ParameterPropertyAccessor.class, Scope.SINGLETON)
 
-.factory(MethodAccessor.class, Object.class.getName(), 
XWorkMethodAccessor.class, Scope.SINGLETON)
+.factory(MethodAccessor.class, XWorkMethodAccessor.class, 
Scope.SINGLETON)
 
 .factory(NullHandler.class, Object.class.getName(), 
InstantiatingNullHandler.class, Scope.SINGLETON)
 .factory(ActionValidatorManager.class, 
AnnotationActionValidatorManager.class, Scope.SINGLETON)
diff --git 
a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java 
b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
index 088caa001..b1d6ea499 100644
--- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
+++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
@@ -57,6 +57,11 @@ public class OgnlValueStackFactory implements 
ValueStackFactory {
 OgnlRuntime.setMethodAccessor(CompoundRoot.class, 
compoundRootAccessor);
 }
 
+@Inject
+protected void setMethodAccessor(MethodAccessor methodAccessor) {
+OgnlRuntime.setMethodAccessor(Object.class, methodAccessor);
+}
+
 @Inject("system")
 protected void setTextProvider(TextProvider textProvider) {
 this.textProvider = textProvider;
@@ -87,12 +92,6 @@ public class OgnlValueStackFactory implements 
ValueStackFactory {
 OgnlRuntime.setPropertyAccessor(cls, 
container.getInstance(PropertyAccessor.class, name));
 }
 
-names = container.getInstanceNames(MethodAccessor.class);
-for (String name : names) {
-Class cls = Class.forName(name);
-OgnlRuntime.setMethodAccessor(cls, 
container.getInstance(MethodAccessor.class, name));
-}
-
 names = container.getInstanceNames(NullHandler.class);
 for (String name : names) {
 Class cls = Class.forName(name);
diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java 
b/core/src/main/java/org/apache/struts2/StrutsConstants.java
index f39258613..939b3bddb 100644
--- a/core/src/main/java/org/apache/struts2/StrutsConstants.java
+++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java
@@ -223,6 +223,9 @@ public final class StrutsConstants {
 /** Extension point for the Struts CompoundRootAccessor */
 public static final String STRUTS_COMPOUND_ROOT_ACCESSOR = 
"struts.compoundRootAccessor";
 
+/** Extension point for the Struts MethodAccessor */
+public static final String STRUTS_METHOD_ACCESSOR = 
"struts.methodAccessor";
+
 /** The name of the xwork converter implementation */
 public static final String STRUTS_XWORKCONVERTER = "struts.xworkConverter";
 
diff --git 
a/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java 
b/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java
index 4895fc6f8..a52a67749 100644
--- 
a/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java
+++ 
b/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java
@@ -61,6 +61,7 @@ import 
com.opensymphony.xwork2.util.location.LocatableProperties;
 import com.opensymphony.xwork2.util.reflection.ReflectionContextFactory;
 import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
 import com.opensymphony.xwork2.validator.ActionValidatorManager;
+import o

(struts) branch WW-5381-method-accessor created (now 588d6fcc5)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-method-accessor
in repository https://gitbox.apache.org/repos/asf/struts.git


  at 588d6fcc5 WW-5381 Introduce extension point for MethodAccessor

This branch includes the following new commits:

 new 588d6fcc5 WW-5381 Introduce extension point for MethodAccessor

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




(struts) branch WW-5381-method-accessor updated (588d6fcc5 -> c322abacb)

2023-12-28 Thread kusal
This is an automated email from the ASF dual-hosted git repository.

kusal pushed a change to branch WW-5381-method-accessor
in repository https://gitbox.apache.org/repos/asf/struts.git


 discard 588d6fcc5 WW-5381 Introduce extension point for MethodAccessor
 add c322abacb WW-5381 Introduce extension point for MethodAccessor

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (588d6fcc5)
\
 N -- N -- N   refs/heads/WW-5381-method-accessor (c322abacb)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../com/opensymphony/xwork2/config/impl/DefaultConfiguration.java | 3 +++
 .../xwork2/config/providers/StrutsDefaultConfigurationProvider.java   | 4 
 2 files changed, 3 insertions(+), 4 deletions(-)