You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by we...@apache.org on 2009/05/29 22:15:15 UTC
svn commit: r780092 - in /struts/struts2/trunk/core/src:
main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
Author: wesw
Date: Fri May 29 20:15:14 2009
New Revision: 780092
URL: http://svn.apache.org/viewvc?rev=780092&view=rev
Log:
WW-3129, now, using DynamicMethodInvocation=false really means false :)
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java?rev=780092&r1=780091&r2=780092&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java Fri May 29 20:15:14 2009
@@ -184,9 +184,10 @@
{
put(METHOD_PREFIX, new ParameterAction() {
public void execute(String key, ActionMapping mapping) {
- mapping
- .setMethod(key
- .substring(METHOD_PREFIX.length()));
+ if (allowDynamicMethodCalls) {
+ mapping.setMethod(key.substring(
+ METHOD_PREFIX.length()));
+ }
}
});
@@ -356,7 +357,7 @@
if (key.endsWith(".x") || key.endsWith(".y")) {
key = key.substring(0, key.length() - 2);
}
-
+
// Ensure a parameter doesn't get processed twice
if (!uniqueParameters.contains(key)) {
ParameterAction parameterAction = (ParameterAction) prefixTrie
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java?rev=780092&r1=780091&r2=780092&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java Fri May 29 20:15:14 2009
@@ -237,6 +237,23 @@
assertEquals(null, mapping.getMethod());
}
+ public void testGetMappingWithActionName_noDynamicMethodColonPrefix() throws Exception {
+
+ Map parameterMap = new HashMap();
+ parameterMap.put(DefaultActionMapper.METHOD_PREFIX + "someMethod", "");
+
+ StrutsMockHttpServletRequest request = new StrutsMockHttpServletRequest();
+ request.setParameterMap(parameterMap);
+ request.setupGetServletPath("/someServletPath.action");
+
+ DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
+ defaultActionMapper.setAllowDynamicMethodCalls("false");
+ ActionMapping actionMapping = defaultActionMapper.getMapping(request, configManager);
+
+ assertEquals("someServletPath", actionMapping.getName());
+ assertEquals(null, actionMapping.getMethod());
+ }
+
public void testGetMappingWithActionName_null() throws Exception {
DefaultActionMapper mapper = new DefaultActionMapper();
ActionMapping mapping = mapper.getMappingFromActionName(null);