Author: lukaszlenart
Date: Tue Oct 15 18:20:43 2013
New Revision: 1532467
URL: http://svn.apache.org/r1532467
Log:
Changes archetypes version to match latest release
Modified:
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/StrutsConstants.java
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/ParameterAction.java
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/resources/org/apache/struts2/default.properties
struts/struts2/branches/STRUTS_2_3_15_X/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
struts/struts2/branches/STRUTS_2_3_15_X/src/site/resources/archetype-catalog.xml
Modified:
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/StrutsConstants.java
URL:
http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/StrutsConstants.java?rev=1532467&r1=1532466&r2=1532467&view=diff
==
---
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/StrutsConstants.java
(original)
+++
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/StrutsConstants.java
Tue Oct 15 18:20:43 2013
@@ -258,4 +258,10 @@ public final class StrutsConstants {
/** actions names' whitelist **/
public static final String STRUTS_ALLOWED_ACTION_NAMES =
"struts.allowed.action.names";
+/** 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 **/
+public static final String STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES =
"struts.mapper.action.prefix.crossNamespaces";
+
}
Modified:
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
URL:
http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java?rev=1532467&r1=1532466&r2=1532467&view=diff
==
---
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
(original)
+++
struts/struts2/branches/STRUTS_2_3_15_X/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
Tue Oct 15 18:20:43 2013
@@ -34,7 +34,6 @@ import org.apache.commons.lang3.StringUt
import org.apache.struts2.RequestUtils;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.StrutsConstants;
-import org.apache.struts2.dispatcher.ServletDispatcherResult;
import org.apache.struts2.util.PrefixTrie;
import javax.servlet.http.HttpServletRequest;
@@ -170,13 +169,14 @@ public class DefaultActionMapper impleme
protected static final String METHOD_PREFIX = "method:";
protected static final String ACTION_PREFIX = "action:";
-private static final String STRUTS2_ACTION_PREFIX_PARSED =
"_struts2_action_prefix_parsed";
protected boolean allowDynamicMethodCalls = false;
protected boolean allowSlashesInActionNames = false;
protected boolean alwaysSelectFullNamespace = false;
protected PrefixTrie prefixTrie = null;
protected Pattern allowedActionNames =
Pattern.compile("[a-zA-Z0-9._!/\\-]*");
+private boolean allowActionPrefix = false;
+private boolean allowActionCrossNamespaceAccess = false;
protected List extensions = new ArrayList() {{
add("action");
@@ -189,7 +189,7 @@ public class DefaultActionMapper impleme
prefixTrie = new PrefixTrie() {
{
put(METHOD_PREFIX, new ParameterAction() {
-public void execute(String key, ActionMapping mapping,
HttpServletRequest request) {
+public void execute(String key, ActionMapping mapping) {
if (allowDynamicMethodCalls) {
mapping.setMethod(key.substring(METHOD_PREFIX.length()));
}
@@ -197,9 +197,8 @@ public class DefaultActionMapper impleme
});
put(ACTION_PREFIX, new ParameterAction() {
-public void execute(final String key, ActionMapping
mapping, HttpServletRequest request) {
-if (request != null &&
request.getAttribute(STRUTS2_ACTION_PREFIX_PARSED) == null) {
-request.setAttribute(STRUTS2_ACTION_PREFIX_PARSED,
true);
+public void execute(final String key, ActionMapping
mapping) {
+if (allowActionPrefix) {