[ https://issues.apache.org/jira/browse/WW-5408?focusedWorklogId=913816&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-913816 ]
ASF GitHub Bot logged work on WW-5408: -------------------------------------- Author: ASF GitHub Bot Created on: 10/Apr/24 05:10 Start Date: 10/Apr/24 05:10 Worklog Time Spent: 10m Work Description: lukaszlenart commented on code in PR #912: URL: https://github.com/apache/struts/pull/912#discussion_r1558851276 ########## core/src/main/java/org/apache/struts2/StrutsConstants.java: ########## @@ -230,6 +230,8 @@ public final class StrutsConstants { public static final String STRUTS_XWORKCONVERTER = "struts.xworkConverter"; public static final String STRUTS_ALWAYS_SELECT_FULL_NAMESPACE = "struts.mapper.alwaysSelectFullNamespace"; + /** Disable fallback to empty namespace when request namespace didn't match any in action configuration */ + public static final String STRUTS_DISABLE_EMPTY_NAMESPACE_FALLBACK = "struts.disableActionConfigFallbackToEmptyNamespace"; Review Comment: Wouldn't be better to have `struts.actionConfig.fallbackToEmptyNamespace` with default value set to `true` instead? Issue Time Tracking ------------------- Worklog Id: (was: 913816) Time Spent: 0.5h (was: 20m) > Add option to NOT fallback to empty namespace when unresolved > ------------------------------------------------------------- > > Key: WW-5408 > URL: https://issues.apache.org/jira/browse/WW-5408 > Project: Struts 2 > Issue Type: Improvement > Components: Core > Reporter: Kusal Kithul-Godage > Priority: Minor > Fix For: 6.5.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > Currently, when a namespace cannot be resolved from a request URL, it falls > back to the empty namespace. > This effectively allows all Actions which are defined for the empty namespace > to be accessed from an infinite number of endpoints. > For example, you may have an Action defined in the empty namespace, intended > for access at: > {{www.domain.com/login.action}} > However, due to the current fallback behaviour, this Action can actually be > accessed at any non-resolving namespace, eg.: > {{www.domain.com/what/about/this/login.action}} > This behaviour is not usually beneficial and could lead to bugs if a > developer only expects their Action to be accessible at a very specific URL. > Many developers may not be aware of these Action resolving quirks of Struts. > As far as I can tell, there is not currently an option to prevent this > behaviour, so I propose we add one. -- This message was sent by Atlassian Jira (v8.20.10#820010)