(struts) branch WW-5381-compoundroot-interface created (now 81239beda)
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
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
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)
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)
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
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)
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)
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
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)
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)
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(-)