You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mr...@apache.org on 2006/07/18 07:28:45 UTC
svn commit: r422972 - in /struts/struts2/trunk/core/src:
main/java/org/apache/struts2/ main/java/org/apache/struts2/dispatcher/
main/java/org/apache/struts2/dispatcher/mapper/
main/java/org/apache/struts2/views/jsp/
test/java/org/apache/struts2/config/...
Author: mrdon
Date: Mon Jul 17 22:28:45 2006
New Revision: 422972
URL: http://svn.apache.org/viewvc?rev=422972&view=rev
Log:
Changed action mapper to use configuration, allowing action names with
slashes, consolidated some tests, few cleanups
WW-1383
Removed:
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/DefautActionMapperTest.java
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsTestCase.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/config/ConfigurationTest.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/NullActionMapper.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/ServletRedirectResultTest.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapperTest.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsTestCase.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsTestCase.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsTestCase.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsTestCase.java Mon Jul 17 22:28:45 2006
@@ -18,10 +18,12 @@
package org.apache.struts2;
import org.apache.struts2.config.Configuration;
+import org.apache.struts2.config.StrutsXMLConfigurationProvider;
import org.apache.struts2.dispatcher.Dispatcher;
import org.springframework.mock.web.MockServletContext;
import com.opensymphony.xwork2.XWorkTestCase;
+import com.opensymphony.xwork2.config.ConfigurationManager;
import com.opensymphony.xwork2.util.LocalizedTextUtil;
/**
@@ -40,6 +42,9 @@
LocalizedTextUtil.clearDefaultResourceBundles();
Dispatcher du = new Dispatcher(new MockServletContext());
Dispatcher.setInstance(du);
+ configurationManager = new ConfigurationManager();
+ configurationManager.addConfigurationProvider(
+ new StrutsXMLConfigurationProvider("struts.xml", false));
du.setConfigurationManager(configurationManager);
}
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java Mon Jul 17 22:28:45 2006
@@ -212,7 +212,7 @@
}
ActionMapper mapper = ActionMapperFactory.getMapper();
- ActionMapping mapping = mapper.getMapping(request);
+ ActionMapping mapping = mapper.getMapping(request, du.getConfigurationManager().getConfiguration());
if (mapping == null) {
// there is no action in this request, should we look for a static resource?
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/ServletRedirectResult.java Mon Jul 17 22:28:45 2006
@@ -103,7 +103,8 @@
if (isPathUrl(finalLocation)) {
if (!finalLocation.startsWith("/")) {
- String namespace = ActionMapperFactory.getMapper().getMapping(request).getNamespace();
+ String namespace = ActionMapperFactory.getMapper().getMapping(
+ request, Dispatcher.getInstance().getConfigurationManager().getConfiguration()).getNamespace();
if ((namespace != null) && (namespace.length() > 0) && (!"/".equals(namespace))) {
finalLocation = namespace + "/" + finalLocation;
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java Mon Jul 17 22:28:45 2006
@@ -19,6 +19,8 @@
import javax.servlet.http.HttpServletRequest;
+import com.opensymphony.xwork2.config.Configuration;
+
/**
* <!-- START SNIPPET: javadoc -->
*
@@ -41,9 +43,10 @@
* Gets an action mapping for the current request
*
* @param request The servlet request
+ * @param config The current configuration
* @return The appropriate action mapping
*/
- ActionMapping getMapping(HttpServletRequest request);
+ ActionMapping getMapping(HttpServletRequest request, Configuration config);
/**
* Converts an ActionMapping into a URI string
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=422972&r1=422971&r2=422972&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 Mon Jul 17 22:28:45 2006
@@ -19,10 +19,12 @@
import org.apache.struts2.RequestUtils;
import org.apache.struts2.StrutsConstants;
-import org.apache.struts2.config.Configuration;
import org.apache.struts2.dispatcher.ServletRedirectResult;
import org.apache.struts2.util.PrefixTrie;
+import com.opensymphony.xwork2.config.Configuration;
+import com.opensymphony.xwork2.config.entities.PackageConfig;
+
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.Iterator;
@@ -149,8 +151,8 @@
private PrefixTrie prefixTrie = null;
private boolean compatibilityMode = false;
public DefaultActionMapper() {
- if (Configuration.isSet(StrutsConstants.STRUTS_COMPATIBILITY_MODE)) {
- compatibilityMode = "true".equals(Configuration.get(StrutsConstants.STRUTS_COMPATIBILITY_MODE));
+ if (org.apache.struts2.config.Configuration.isSet(StrutsConstants.STRUTS_COMPATIBILITY_MODE)) {
+ compatibilityMode = "true".equals(org.apache.struts2.config.Configuration.get(StrutsConstants.STRUTS_COMPATIBILITY_MODE));
}
prefixTrie = new PrefixTrie() {
{
@@ -203,11 +205,11 @@
/* (non-Javadoc)
* @see org.apache.struts2.dispatcher.mapper.ActionMapper#getMapping(javax.servlet.http.HttpServletRequest)
*/
- public ActionMapping getMapping(HttpServletRequest request) {
+ public ActionMapping getMapping(HttpServletRequest request, Configuration config) {
ActionMapping mapping = new ActionMapping();
String uri = getUri(request);
- parseNameAndNamespace(uri, mapping);
+ parseNameAndNamespace(uri, mapping, config);
handleSpecialParameters(request, mapping);
@@ -253,7 +255,7 @@
* @param uri The uri
* @param mapping The action mapping to populate
*/
- void parseNameAndNamespace(String uri, ActionMapping mapping) {
+ void parseNameAndNamespace(String uri, ActionMapping mapping, Configuration config) {
String namespace, name;
int lastSlash = uri.lastIndexOf("/");
if (lastSlash == -1) {
@@ -265,8 +267,19 @@
namespace = "/";
name = uri.substring(lastSlash + 1);
} else {
- namespace = uri.substring(0, lastSlash);
- name = uri.substring(lastSlash + 1);
+ String prefix = uri.substring(0, lastSlash);
+ namespace = "";
+ // Find the longest matching namespace, defaulting to the default
+ for (Iterator i = config.getPackageConfigs().values().iterator(); i.hasNext(); ) {
+ String ns = ((PackageConfig)i.next()).getNamespace();
+ if (ns != null && prefix.startsWith(ns)) {
+ if (ns.length() > namespace.length()) {
+ namespace = ns;
+ }
+ }
+ }
+
+ name = uri.substring(namespace.length() + 1);
}
mapping.setNamespace(namespace);
mapping.setName(dropExtension(name));
@@ -310,7 +323,7 @@
* Returns null if no extension is specified.
*/
static List getExtensions() {
- String extensions = (String) Configuration.get(StrutsConstants.STRUTS_ACTION_EXTENSION);
+ String extensions = (String) org.apache.struts2.config.Configuration.get(StrutsConstants.STRUTS_ACTION_EXTENSION);
if ("".equals(extensions)) {
return null;
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java Mon Jul 17 22:28:45 2006
@@ -22,6 +22,8 @@
import org.apache.struts2.RequestUtils;
+import com.opensymphony.xwork2.config.Configuration;
+
import javax.servlet.http.HttpServletRequest;
import java.net.URLDecoder;
import java.util.HashMap;
@@ -58,7 +60,7 @@
/* (non-Javadoc)
* @see org.apache.struts2.dispatcher.mapper.ActionMapper#getMapping(javax.servlet.http.HttpServletRequest)
*/
- public ActionMapping getMapping(HttpServletRequest request) {
+ public ActionMapping getMapping(HttpServletRequest request, Configuration config) {
String uri = RequestUtils.getServletPath(request);
int nextSlash = uri.indexOf('/', 1);
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java Mon Jul 17 22:28:45 2006
@@ -81,7 +81,8 @@
if (invocation == null) {
ActionMapper mapper = ActionMapperFactory.getMapper();
- ActionMapping mapping = mapper.getMapping(request);
+ ActionMapping mapping = mapper.getMapping(request,
+ Dispatcher.getInstance().getConfigurationManager().getConfiguration());
if (mapping != null) {
return mapping.getNamespace();
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/config/ConfigurationTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/config/ConfigurationTest.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/config/ConfigurationTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/config/ConfigurationTest.java Mon Jul 17 22:28:45 2006
@@ -43,7 +43,7 @@
assertEquals("de", locale.getLanguage());
int count = getKeyCount();
- assertEquals(28, count);
+ assertEquals(29, count);
}
public void testDefaultResourceBundlesLoaded() {
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/NullActionMapper.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/NullActionMapper.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/NullActionMapper.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/NullActionMapper.java Mon Jul 17 22:28:45 2006
@@ -22,6 +22,8 @@
import org.apache.struts2.dispatcher.mapper.ActionMapper;
import org.apache.struts2.dispatcher.mapper.ActionMapping;
+import com.opensymphony.xwork2.config.Configuration;
+
/**
* ActionMapper for testing FilterDispatcher (used in FilterDispaatcherTest)
*/
@@ -35,7 +37,7 @@
_actionMapping = actionMappingToBeRetrned;
}
- public ActionMapping getMapping(HttpServletRequest request) {
+ public ActionMapping getMapping(HttpServletRequest request, Configuration config) {
return _actionMapping;
}
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/ServletRedirectResultTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/ServletRedirectResultTest.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/ServletRedirectResultTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/ServletRedirectResultTest.java Mon Jul 17 22:28:45 2006
@@ -19,11 +19,17 @@
import com.mockobjects.dynamic.C;
import com.mockobjects.dynamic.Mock;
+
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.StrutsStatics;
import org.apache.struts2.StrutsTestCase;
+import org.apache.struts2.config.StrutsXMLConfigurationProvider;
+import org.springframework.mock.web.MockServletContext;
+
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
+import com.opensymphony.xwork2.config.ConfigurationManager;
+import com.opensymphony.xwork2.config.entities.PackageConfig;
import com.opensymphony.xwork2.mock.MockActionInvocation;
import com.opensymphony.xwork2.util.OgnlValueStack;
import ognl.Ognl;
@@ -90,6 +96,14 @@
protected void setUp() throws Exception {
super.setUp();
+ Dispatcher du = new Dispatcher(new MockServletContext());
+ Dispatcher.setInstance(du);
+ ConfigurationManager cm = new ConfigurationManager();
+ cm.addConfigurationProvider(new StrutsXMLConfigurationProvider("struts.xml", false));
+ du.setConfigurationManager(cm);
+ du.getConfigurationManager().getConfiguration().
+ addPackageConfig("foo", new PackageConfig("foo", "/namespace", false, null));
+
view = new ServletRedirectResult();
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=422972&r1=422971&r2=422972&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 Mon Jul 17 22:28:45 2006
@@ -17,7 +17,13 @@
*/
package org.apache.struts2.dispatcher.mapper;
+import com.mockobjects.servlet.MockHttpServletRequest;
import com.opensymphony.xwork2.Result;
+import com.opensymphony.xwork2.config.Configuration;
+import com.opensymphony.xwork2.config.entities.PackageConfig;
+import com.opensymphony.xwork2.config.impl.DefaultConfiguration;
+
+import org.apache.struts2.StrutsConstants;
import org.apache.struts2.StrutsTestCase;
import org.apache.struts2.dispatcher.ServletRedirectResult;
import org.apache.struts2.views.jsp.StrutsMockHttpServletRequest;
@@ -31,6 +37,128 @@
*/
public class DefaultActionMapperTest extends StrutsTestCase {
+ private MockHttpServletRequest req;
+ private Configuration config;
+
+ protected void setUp() throws Exception {
+ super.setUp();
+ req = new MockHttpServletRequest();
+ req.setupGetParameterMap(new HashMap());
+ req.setupGetContextPath("/my/namespace");
+
+ config = new DefaultConfiguration();
+ PackageConfig pkg = new PackageConfig("myns", "/my/namespace", false, null);
+ PackageConfig pkg2 = new PackageConfig("my", "/my", false, null);
+ config.addPackageConfig("mvns", pkg);
+ config.addPackageConfig("my", pkg2);
+ }
+
+ public void testGetMapping() throws Exception {
+ setUp();
+ req.setupGetRequestURI("/my/namespace/actionName.action");
+ req.setupGetServletPath("/my/namespace/actionName.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("/my/namespace", mapping.getNamespace());
+ assertEquals("actionName", mapping.getName());
+ assertNull(mapping.getMethod());
+ }
+
+ public void testGetMappingWithMethod() throws Exception {
+ req.setupGetParameterMap(new HashMap());
+ req.setupGetRequestURI("/my/namespace/actionName!add.action");
+ req.setupGetServletPath("/my/namespace/actionName!add.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("/my/namespace", mapping.getNamespace());
+ assertEquals("actionName!add", mapping.getName());
+ }
+
+ public void testGetMappingWithSlashedName() throws Exception {
+ setUp();
+ req.setupGetRequestURI("/my/foo/actionName.action");
+ req.setupGetServletPath("/my/foo/actionName.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("/my", mapping.getNamespace());
+ assertEquals("foo/actionName", mapping.getName());
+ assertNull(mapping.getMethod());
+ }
+
+ public void testGetMappingWithUnknownNamespace() throws Exception {
+ setUp();
+ req.setupGetRequestURI("/bo/foo/actionName.action");
+ req.setupGetServletPath("/bo/foo/actionName.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("", mapping.getNamespace());
+ assertEquals("bo/foo/actionName", mapping.getName());
+ assertNull(mapping.getMethod());
+ }
+
+ public void testGetUri() throws Exception {
+ req.setupGetParameterMap(new HashMap());
+ req.setupGetRequestURI("/my/namespace/actionName.action");
+ req.setupGetServletPath("/my/namespace/actionName.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+ assertEquals("/my/namespace/actionName.action", mapper.getUriFromActionMapping(mapping));
+ }
+
+ public void testGetUriWithMethod() throws Exception {
+ req.setupGetParameterMap(new HashMap());
+ req.setupGetRequestURI("/my/namespace/actionName!add.action");
+ req.setupGetServletPath("/my/namespace/actionName!add.action");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("/my/namespace/actionName!add.action", mapper.getUriFromActionMapping(mapping));
+ }
+
+ public void testGetMappingWithNoExtension() throws Exception {
+ Object old = org.apache.struts2.config.Configuration.get(StrutsConstants.STRUTS_ACTION_EXTENSION);
+ org.apache.struts2.config.Configuration.set(StrutsConstants.STRUTS_ACTION_EXTENSION, "");
+ try {
+ req.setupGetParameterMap(new HashMap());
+ req.setupGetRequestURI("/my/namespace/actionName");
+ req.setupGetServletPath("/my/namespace/actionName");
+ req.setupGetAttribute(null);
+ req.addExpectedGetAttributeName("javax.servlet.include.servlet_path");
+
+ DefaultActionMapper mapper = new DefaultActionMapper();
+ ActionMapping mapping = mapper.getMapping(req, config);
+
+ assertEquals("/my/namespace", mapping.getNamespace());
+ assertEquals("actionName", mapping.getName());
+ assertNull(mapping.getMethod());
+ }
+ finally {
+ org.apache.struts2.config.Configuration.set(StrutsConstants.STRUTS_ACTION_EXTENSION, old);
+ }
+ }
+
// =============================
// === test name & namespace ===
// =============================
@@ -39,7 +167,7 @@
ActionMapping actionMapping = new ActionMapping();
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- defaultActionMapper.parseNameAndNamespace("someAction.action", actionMapping);
+ defaultActionMapper.parseNameAndNamespace("someAction.action", actionMapping, config);
assertEquals(actionMapping.getName(), "someAction");
assertEquals(actionMapping.getNamespace(), "");
@@ -49,7 +177,7 @@
ActionMapping actionMapping = new ActionMapping();
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- defaultActionMapper.parseNameAndNamespace("/someAction.action", actionMapping);
+ defaultActionMapper.parseNameAndNamespace("/someAction.action", actionMapping, config);
assertEquals(actionMapping.getName(), "someAction");
assertEquals(actionMapping.getNamespace(), "/");
@@ -59,10 +187,10 @@
ActionMapping actionMapping = new ActionMapping();
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- defaultActionMapper.parseNameAndNamespace("/one/two/three/someAction.action", actionMapping);
+ defaultActionMapper.parseNameAndNamespace("/my/someAction.action", actionMapping, config);
assertEquals(actionMapping.getName(), "someAction");
- assertEquals(actionMapping.getNamespace(), "/one/two/three");
+ assertEquals(actionMapping.getNamespace(), "/my");
}
@@ -79,7 +207,7 @@
request.setupGetServletPath("/someServletPath.action");
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- ActionMapping actionMapping = defaultActionMapper.getMapping(request);
+ ActionMapping actionMapping = defaultActionMapper.getMapping(request, config);
assertEquals(actionMapping.getName(), "myAction");
}
@@ -93,7 +221,7 @@
request.setParameterMap(parameterMap);
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- ActionMapping actionMapping = defaultActionMapper.getMapping(request);
+ ActionMapping actionMapping = defaultActionMapper.getMapping(request, config);
Result result = actionMapping.getResult();
assertNotNull(result);
@@ -111,7 +239,7 @@
request.setParameterMap(parameterMap);
DefaultActionMapper defaultActionMapper = new DefaultActionMapper();
- ActionMapping actionMapping = defaultActionMapper.getMapping(request);
+ ActionMapping actionMapping = defaultActionMapper.getMapping(request, config);
Result result = actionMapping.getResult();
assertNotNull(result);
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java?rev=422972&r1=422971&r2=422972&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapperTest.java Mon Jul 17 22:28:45 2006
@@ -69,14 +69,14 @@
StrutsMockHttpServletRequest request = new StrutsMockHttpServletRequest();
request.setupGetServletPath("noslash");
- assertNull(mapper.getMapping(request));
+ assertNull(mapper.getMapping(request, null));
}
public void testGetMapping() throws Exception {
StrutsMockHttpServletRequest request = new StrutsMockHttpServletRequest();
request.setupGetServletPath("/myapp/view/12");
- ActionMapping am = mapper.getMapping(request);
+ ActionMapping am = mapper.getMapping(request, null);
assertEquals("myapp", am.getName());
assertEquals(1, am.getParams().size());
assertEquals("12", am.getParams().get("view"));
@@ -86,7 +86,7 @@
StrutsMockHttpServletRequest request = new StrutsMockHttpServletRequest();
request.setupGetServletPath("/myapp/12/region/europe");
- ActionMapping am = mapper.getMapping(request);
+ ActionMapping am = mapper.getMapping(request, null);
assertEquals("myapp", am.getName());
assertEquals(2, am.getParams().size());
assertEquals("12", am.getParams().get("myappId"));
@@ -97,7 +97,7 @@
StrutsMockHttpServletRequest request = new StrutsMockHttpServletRequest();
request.setupGetServletPath("/myapp/view/12/region/europe");
- ActionMapping am = mapper.getMapping(request);
+ ActionMapping am = mapper.getMapping(request, null);
assertEquals("myapp", am.getName());
assertEquals(2, am.getParams().size());
assertEquals("12", am.getParams().get("view"));