This is an automated email from the ASF dual-hosted git repository.
lukaszlenart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/struts.git
The following commit(s) were added to refs/heads/master by this push:
new 8b4f070d7 WW-5243 remove deprecated action prefix cross namespaces
new b5e7b4398 Merge pull request #669 from sdutry/issue/WW-5243
8b4f070d7 is described below
commit 8b4f070d7c60c8fecad2dc09661d5c3a84529fb1
Author: Stefaan Dutry <[email protected]>
AuthorDate: Mon Mar 13 23:07:45 2023 +0100
WW-5243 remove deprecated action prefix cross namespaces
---
.../java/org/apache/struts2/StrutsConstants.java | 7 -----
.../struts2/config/entities/ConstantConfig.java | 1 -
.../dispatcher/mapper/DefaultActionMapper.java | 15 ++--------
.../dispatcher/mapper/DefaultActionMapperTest.java | 33 ----------------------
4 files changed, 2 insertions(+), 54 deletions(-)
diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java
b/core/src/main/java/org/apache/struts2/StrutsConstants.java
index dc5720b71..a5537727c 100644
--- a/core/src/main/java/org/apache/struts2/StrutsConstants.java
+++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java
@@ -401,13 +401,6 @@ public final class StrutsConstants {
/** Enables action: prefix */
public static final String STRUTS_MAPPER_ACTION_PREFIX_ENABLED =
"struts.mapper.action.prefix.enabled";
- /**
- * Enables access to actions in other namespaces than current with action:
prefix
- * @deprecated it will be removed soon, please refactor your application
- */
- @Deprecated
- public static final String STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES =
"struts.mapper.action.prefix.crossNamespaces";
-
public static final String DEFAULT_TEMPLATE_TYPE_CONFIG_KEY =
"struts.ui.templateSuffix";
/** Allows override default DispatcherErrorHandler */
diff --git
a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
index 107f35e51..49a6e4127 100644
--- a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
+++ b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
@@ -252,7 +252,6 @@ public class ConstantConfig {
map.put(StrutsConstants.STRUTS_ALLOWED_METHOD_NAMES,
Objects.toString(allowedMethodNames, null));
map.put(StrutsConstants.STRUTS_DEFAULT_METHOD_NAME, defaultMethodName);
map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_ENABLED,
Objects.toString(mapperActionPrefixEnabled, null));
- map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES,
Objects.toString(mapperActionPrefixCrossNamespaces, null));
map.put(StrutsConstants.DEFAULT_TEMPLATE_TYPE_CONFIG_KEY,
uiTemplateSuffix);
map.put(StrutsConstants.STRUTS_DISPATCHER_ERROR_HANDLER,
beanConfToString(dispatcherErrorHandler));
map.put(StrutsConstants.STRUTS_EXCLUDED_CLASSES,
classesToString(excludedClasses));
diff --git
a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
index bcdd4c3d1..96dae07c4 100644
---
a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
+++
b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
@@ -132,7 +132,6 @@ public class DefaultActionMapper implements ActionMapper {
protected String defaultMethodName = "execute";
private boolean allowActionPrefix = false;
- private boolean allowActionCrossNamespaceAccess = false;
protected List<String> extensions = new ArrayList<String>() {{
add("action");
@@ -162,12 +161,12 @@ public class DefaultActionMapper implements ActionMapper {
}
}
String actionName = cleanupActionName(name);
- if (allowSlashesInActionNames &&
!allowActionCrossNamespaceAccess) {
+ if (allowSlashesInActionNames) {
if (actionName.startsWith("/")) {
actionName = actionName.substring(1);
}
}
- if (!allowSlashesInActionNames &&
!allowActionCrossNamespaceAccess) {
+ if (!allowSlashesInActionNames) {
if (actionName.lastIndexOf('/') != -1) {
actionName =
actionName.substring(actionName.lastIndexOf('/') + 1);
}
@@ -241,16 +240,6 @@ public class DefaultActionMapper implements ActionMapper {
this.allowActionPrefix = BooleanUtils.toBoolean(allowActionPrefix);
}
- /**
- * @deprecated since 6.1.0 - please refactor your application to avoid
using this functionality
- * @param allowActionCrossNamespaceAccess true to enable cross namespace
action access
- */
- @Deprecated
- @Inject(value =
StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES)
- public void setAllowActionCrossNamespaceAccess(String
allowActionCrossNamespaceAccess) {
- this.allowActionCrossNamespaceAccess =
BooleanUtils.toBoolean(allowActionCrossNamespaceAccess);
- }
-
@Inject
public void setContainer(Container container) {
this.container = container;
diff --git
a/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
b/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
index 097517e21..c1cca1a11 100644
---
a/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
+++
b/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
@@ -463,39 +463,6 @@ public class DefaultActionMapperTest extends
StrutsInternalTestCase {
assertEquals("Action", actionMapping.getName());
}
- public void
testActionPrefixWhenSlashesButSlashesDisabledAndCrossNamespace() {
- Map<String, Object> parameterMap = new HashMap<>();
- parameterMap.put(DefaultActionMapper.ACTION_PREFIX + "my/Action", "");
-
- StrutsMockHttpServletRequest request = new
StrutsMockHttpServletRequest();
- request.setParameterMap(parameterMap);
- request.setupGetServletPath("/someServletPath.action");
-
- DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- defaultActionMapper.setAllowActionPrefix("true");
- defaultActionMapper.setAllowActionCrossNamespaceAccess("true");
- defaultActionMapper.setSlashesInActionNames("false");
- ActionMapping actionMapping = defaultActionMapper.getMapping(request,
configManager);
-
- assertEquals("my/Action", actionMapping.getName());
- }
-
- public void testActionPrefixWhenCrossNamespace() {
- Map<String, Object> parameterMap = new HashMap<>();
- parameterMap.put(DefaultActionMapper.ACTION_PREFIX + "/my/Action", "");
-
- StrutsMockHttpServletRequest request = new
StrutsMockHttpServletRequest();
- request.setParameterMap(parameterMap);
- request.setupGetServletPath("/someServletPath.action");
-
- DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- defaultActionMapper.setAllowActionPrefix("true");
- defaultActionMapper.setAllowActionCrossNamespaceAccess("true");
- ActionMapping actionMapping = defaultActionMapper.getMapping(request,
configManager);
-
- assertEquals("/my/Action", actionMapping.getName());
- }
-
public void testActionPrefix_fromImageButton() {
Map<String, Object> parameterMap = new HashMap<>();
parameterMap.put(DefaultActionMapper.ACTION_PREFIX + "myAction", "");