Author: markt
Date: Tue Feb 28 11:16:51 2017
New Revision: 1784723
URL: http://svn.apache.org/viewvc?rev=1784723&view=rev
Log:
Servlet 4 EG discussion concluded that leading '/' should not be present in
match values.
Modified:
tomcat/trunk/java/org/apache/catalina/core/ApplicationMapping.java
tomcat/trunk/test/org/apache/catalina/core/TestApplicationMapping.java
Modified: tomcat/trunk/java/org/apache/catalina/core/ApplicationMapping.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ApplicationMapping.java?rev=1784723&r1=1784722&r2=1784723&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/ApplicationMapping.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/core/ApplicationMapping.java Tue Feb
28 11:16:51 2017
@@ -44,20 +44,20 @@ public class ApplicationMapping {
mapping = new MappingImpl("", "", mappingData.matchType,
servletName);
break;
case DEFAULT:
- mapping = new MappingImpl("/", "/", mappingData.matchType,
servletName);
+ mapping = new MappingImpl("", "/", mappingData.matchType,
servletName);
break;
case EXACT:
- mapping = new
MappingImpl(mappingData.wrapperPath.toString(),
+ mapping = new
MappingImpl(mappingData.wrapperPath.toString().substring(1),
mappingData.wrapperPath.toString(),
mappingData.matchType, servletName);
break;
case EXTENSION:
String path = mappingData.wrapperPath.toString();
int extIndex = path.lastIndexOf('.');
- mapping = new MappingImpl(path.substring(0, extIndex),
+ mapping = new MappingImpl(path.substring(1, extIndex),
"*" + path.substring(extIndex),
mappingData.matchType, servletName);
break;
case PATH:
- mapping = new MappingImpl(mappingData.pathInfo.toString(),
+ mapping = new
MappingImpl(mappingData.pathInfo.toString().substring(1),
mappingData.wrapperPath.toString() + "/*",
mappingData.matchType, servletName);
break;
Modified: tomcat/trunk/test/org/apache/catalina/core/TestApplicationMapping.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/core/TestApplicationMapping.java?rev=1784723&r1=1784722&r2=1784723&view=diff
==============================================================================
--- tomcat/trunk/test/org/apache/catalina/core/TestApplicationMapping.java
(original)
+++ tomcat/trunk/test/org/apache/catalina/core/TestApplicationMapping.java Tue
Feb 28 11:16:51 2017
@@ -45,22 +45,22 @@ public class TestApplicationMapping exte
@Test
public void testContextNonRootMappingDefault() throws Exception {
- doTestMapping("/dummy", "/", "/foo", "/", "DEFAULT");
+ doTestMapping("/dummy", "/", "/foo", "", "DEFAULT");
}
@Test
public void testContextNonRootMappingExtension() throws Exception {
- doTestMapping("/dummy", "*.test", "/foo/bar.test", "/foo/bar",
"EXTENSION");
+ doTestMapping("/dummy", "*.test", "/foo/bar.test", "foo/bar",
"EXTENSION");
}
@Test
public void testContextNonRootMappingExact() throws Exception {
- doTestMapping("/dummy", "/foo/bar", "/foo/bar", "/foo/bar", "EXACT");
+ doTestMapping("/dummy", "/foo/bar", "/foo/bar", "foo/bar", "EXACT");
}
@Test
public void testContextNonRootMappingPath() throws Exception {
- doTestMapping("/dummy", "/foo/bar/*", "/foo/bar/foo2", "/foo2",
"PATH");
+ doTestMapping("/dummy", "/foo/bar/*", "/foo/bar/foo2", "foo2", "PATH");
}
@Test
@@ -70,22 +70,22 @@ public class TestApplicationMapping exte
@Test
public void testContextRootMappingDefault() throws Exception {
- doTestMapping("", "/", "/foo", "/", "DEFAULT");
+ doTestMapping("", "/", "/foo", "", "DEFAULT");
}
@Test
public void testContextRootMappingExtension() throws Exception {
- doTestMapping("", "*.test", "/foo/bar.test", "/foo/bar", "EXTENSION");
+ doTestMapping("", "*.test", "/foo/bar.test", "foo/bar", "EXTENSION");
}
@Test
public void testContextRootMappingExact() throws Exception {
- doTestMapping("", "/foo/bar", "/foo/bar", "/foo/bar", "EXACT");
+ doTestMapping("", "/foo/bar", "/foo/bar", "foo/bar", "EXACT");
}
@Test
public void testContextRootMappingPath() throws Exception {
- doTestMapping("", "/foo/bar/*", "/foo/bar/foo2", "/foo2", "PATH");
+ doTestMapping("", "/foo/bar/*", "/foo/bar/foo2", "foo2", "PATH");
}
private void doTestMapping(String contextPath, String mapping, String
requestPath,
@@ -151,7 +151,7 @@ public class TestApplicationMapping exte
Assert.assertTrue(body, body.contains("MatchType=[" + matchType +
"]"));
Assert.assertTrue(body, body.contains("ServletName=[Include]"));
- Assert.assertTrue(body, body.contains("IncludeMatchValue=[/mapping]"));
+ Assert.assertTrue(body, body.contains("IncludeMatchValue=[mapping]"));
Assert.assertTrue(body, body.contains("IncludePattern=[/mapping]"));
Assert.assertTrue(body, body.contains("IncludeMatchType=[EXACT]"));
Assert.assertTrue(body, body.contains("IncludeServletName=[Mapping]"));
@@ -197,7 +197,7 @@ public class TestApplicationMapping exte
ByteChunk bc = getUrl("http://localhost:" + getPort() + contextPath +
requestPath);
String body = bc.toString();
- Assert.assertTrue(body, body.contains("MatchValue=[/mapping]"));
+ Assert.assertTrue(body, body.contains("MatchValue=[mapping]"));
Assert.assertTrue(body, body.contains("Pattern=[/mapping]"));
Assert.assertTrue(body, body.contains("MatchType=[EXACT]"));
Assert.assertTrue(body, body.contains("ServletName=[Mapping]"));
@@ -249,7 +249,7 @@ public class TestApplicationMapping exte
ByteChunk bc = getUrl("http://localhost:" + getPort() + contextPath +
requestPath);
String body = bc.toString();
- Assert.assertTrue(body, body.contains("MatchValue=[/mapping]"));
+ Assert.assertTrue(body, body.contains("MatchValue=[mapping]"));
Assert.assertTrue(body, body.contains("Pattern=[/mapping]"));
Assert.assertTrue(body, body.contains("MatchType=[EXACT]"));
Assert.assertTrue(body, body.contains("ServletName=[Mapping]"));
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]