Copied: 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
 (from r1839609, 
tomcat/tc8.5.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java)
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java?p2=tomcat/tc7.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java&p1=tomcat/tc8.5.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java&r1=1839609&r2=1839610&rev=1839610&view=diff
==============================================================================
--- 
tomcat/tc8.5.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
 Wed Aug 29 19:59:31 2018
@@ -38,8 +38,6 @@ import org.junit.runners.Parameterized.P
 
 import org.apache.catalina.Context;
 import org.apache.catalina.Wrapper;
-import org.apache.catalina.servlet4preview.http.MappingMatch;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
 import org.apache.catalina.startup.Tomcat;
 import org.apache.catalina.startup.TomcatBaseTest;
 import org.apache.tomcat.util.buf.ByteChunk;
@@ -50,149 +48,103 @@ public class TestApplicationContextGetRe
     @Parameters(name = "{index}: startMapping[{0}], startUri[{1}], 
dispatcherType[{2}], " +
             "targetMapping[{3}], targetUri[{4}], useEncodedDispatchPaths[{5}], 
" +
             "expectedRequestURI[{6}], expectedContextPath[{7}], 
expectedServletPath[{8}], " +
-            "expectedPathInfo[{9}], expectedQueryString[{10}], 
expectedMappingMatch[{11}, " +
-            "expectedMappingPattern[{12}], expectedMappingMatchValue[{13}], " +
-            "expectedMappingServletName[{14}], " +
-            "expectedDispatcherRequestURI[{15}], 
expectedDispatcherContextPath[{16}], " +
-            "expectedDispatcherServletPath[{17}], 
expectedDispatcherPathInfo[{18}], " +
-            "expectedDispatcherQueryString[{19}], 
expectedDispatcherMappingMatch[{20}]," +
-            "expectedDispatcherMappingPattern[{21}], 
expectedDispatcherMappingMatchValue[{22}]," +
-            "expectedDispatcherMappingServletName[{23}]," +
-            "expectedBody")
+            "expectedPathInfo[{9}], expectedQueryString[{10}], " +
+            "expectedDispatcherRequestURI[{11}], 
expectedDispatcherContextPath[{12}], " +
+            "expectedDispatcherServletPath[{13}], 
expectedDispatcherPathInfo[{14}], " +
+            "expectedDispatcherQueryString[{15}], " +
+            "expectedBody[{16}]")
     public static Collection<Object[]> data() {
         return Arrays.asList(new Object[][]{
             // Simple dispatch for each type
             { "/start", "/start", DispatcherType.INCLUDE, "/target", 
"/target", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", "/start", DispatcherType.FORWARD, "/target", 
"/target", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start", DispatcherType.ASYNC, "/target", "/target", 
Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Simple dispatch with query strings
             { "/start", "/start?abcde=fghij", DispatcherType.INCLUDE, 
"/target", "/target?zyxwv=utsrq", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target", "/test", "/target", null, "zyxwv=utsrq",
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", "/start?abcde=fghij", DispatcherType.FORWARD, 
"/target", "/target?zyxwv=utsrq", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, "zyxwv=utsrq",
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start?abcde=fghij", DispatcherType.ASYNC, "/target", 
"/target?zyxwv=utsrq", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, "zyxwv=utsrq",
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Simple dispatch with trailing path parameters at start
             { "/start", "/start;abcde=fghij", DispatcherType.INCLUDE, 
"/target", "/target", Boolean.TRUE,
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.FORWARD, 
"/target", "/target", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.ASYNC, "/target", 
"/target", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Simple dispatch with path parameters at start
             { "/start", ";abcde=fghij/start", DispatcherType.INCLUDE, 
"/target", "/target", Boolean.TRUE,
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", ";abcde=fghij/start", DispatcherType.FORWARD, 
"/target", "/target", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", ";abcde=fghij/start", DispatcherType.ASYNC, "/target", 
"/target", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Simple dispatch with path parameters on dispatch
             { "/start", "/start", DispatcherType.INCLUDE, "/target", 
"/target;abcde=fghij", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target;abcde=fghij", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", "/start", DispatcherType.FORWARD, "/target", 
"/target;abcde=fghij", Boolean.TRUE,
                     "/test/target;abcde=fghij", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start", DispatcherType.ASYNC, "/target", 
"/target;abcde=fghij", Boolean.TRUE,
                     "/test/target;abcde=fghij", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Simple dispatch with multiple path parameters on start and 
dispatch
             { "/start", "/start;abcde=fghij", DispatcherType.INCLUDE, 
"/target", ";klmno=pqrst/target;uvwxy=z0123", Boolean.TRUE,
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/;klmno=pqrst/target;uvwxy=z0123", "/test", 
"/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.FORWARD, 
"/target", ";klmno=pqrst/target;uvwxy=z0123", Boolean.TRUE,
                     "/test/;klmno=pqrst/target;uvwxy=z0123", "/test", 
"/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.ASYNC, "/target", 
";klmno=pqrst/target;uvwxy=z0123", Boolean.TRUE,
                     "/test/;klmno=pqrst/target;uvwxy=z0123", "/test", 
"/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "ASYNC-IAE"},
             // Simple dispatch with directory traversal
             { "/start/*", "/start/foo", DispatcherType.INCLUDE, "/target", 
"../target", Boolean.TRUE,
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start/*", "/start/foo", DispatcherType.FORWARD, "/target", 
"../target", Boolean.TRUE,
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "OK"},
             { "/start/*", "/start/foo", DispatcherType.ASYNC, "/target", 
"../target", Boolean.TRUE,
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "ASYNC-IAE"},
             // Simple dispatch with directory traversal and path parameters
             // Note comments in Request.getRequestDispatcher(String) that
@@ -200,154 +152,106 @@ public class TestApplicationContextGetRe
             // dispatched requestURI
             { "/start/*", "/start;abcde=fghij/foo", DispatcherType.INCLUDE, 
"/target", "../target;klmno=pqrst", Boolean.TRUE,
                     "/test/start;abcde=fghij/foo", "/test", "/start", "/foo", 
null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "/test/start/../target;klmno=pqrst", "/test", "/target", 
null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "OK"},
             { "/start/*", "/start;abcde=fghij/foo", DispatcherType.FORWARD, 
"/target", "../target;klmno=pqrst", Boolean.TRUE,
                     "/test/start/../target;klmno=pqrst", "/test", "/target", 
null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij/foo", "/test", "/start", "/foo", 
null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "OK"},
             { "/start/*", "/start;abcde=fghij/foo", DispatcherType.ASYNC, 
"/target", "../target;klmno=pqrst", Boolean.TRUE,
                     "/test/start;abcde=fghij/../target;klmno=pqrst", "/test", 
"/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start;abcde=fghij/foo", "/test", "/start", "/foo", 
null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "ASYNC-IAE"},
             // Simple dispatch with invalid directory traversal
             { "/start/*", "/start/foo", DispatcherType.INCLUDE, "/target", 
"../../target", Boolean.TRUE,
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "RD-NULL"},
             { "/start/*", "/start/foo", DispatcherType.FORWARD, "/target", 
"../../target", Boolean.TRUE,
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "RD-NULL"},
             { "/start/*", "/start/foo", DispatcherType.ASYNC, "/target", 
"../../target", Boolean.TRUE,
                     "/test/start/../target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start/foo", "/test", "/start", "/foo", null,
-                    MappingMatch.PATH, "/start/*", "foo", "rd",
                     "ASYNC-IAE"},
             // Simple dispatch with invalid target
             { "/start", "/start", DispatcherType.INCLUDE, "/target", 
"/does-not-exist", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "RD-NULL"},
             { "/start", "/start", DispatcherType.FORWARD, "/target", 
"/does-not-exist", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "RD-NULL"},
             { "/start", "/start", DispatcherType.ASYNC, "/target", 
"/does-not-exist", Boolean.TRUE,
                     "/test/target", "/test", "/target", null, null,
-                    MappingMatch.EXACT, "/target", "target", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "ASYNC-RD-NULL"},
             // Welcome files
             { "/start", "/start", DispatcherType.INCLUDE, "*.html", "/", 
Boolean.TRUE,
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "OK"},
             { "/start", "/start", DispatcherType.FORWARD, "*.html", "/", 
Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start", DispatcherType.ASYNC, "*.html", "/", 
Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Welcome files with query strings
             { "/start", "/start?abcde=fghij", DispatcherType.INCLUDE, 
"*.html", "/?zyxwv=utsrq", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/", "/test", "/index.html", null, "zyxwv=utsrq",
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "OK"},
             { "/start", "/start?abcde=fghij", DispatcherType.FORWARD, 
"*.html", "/?zyxwv=utsrq", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, "zyxwv=utsrq",
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start?abcde=fghij", DispatcherType.ASYNC, "*.html", 
"/?zyxwv=utsrq", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, "zyxwv=utsrq",
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, "abcde=fghij",
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Welcome files with trailing path parameters at start
             { "/start", "/start;abcde=fghij", DispatcherType.INCLUDE, 
"*.html", "/", Boolean.TRUE,
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.FORWARD, 
"*.html", "/", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start;abcde=fghij", DispatcherType.ASYNC, "*.html", 
"/", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start;abcde=fghij", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Welcome files with path parameters at start
             { "/start", ";abcde=fghij/start", DispatcherType.INCLUDE, 
"*.html", "/", Boolean.TRUE,
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "OK"},
             { "/start", ";abcde=fghij/start", DispatcherType.FORWARD, 
"*.html", "/", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", ";abcde=fghij/start", DispatcherType.ASYNC, "*.html", 
"/", Boolean.TRUE,
                     "/test/", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test;abcde=fghij/start", "/test;abcde=fghij", "/start", 
null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             // Welcome files with trailing path parameters on dispatch
             { "/start", "/start", DispatcherType.INCLUDE, "*.html", 
"/;abcde=fghij", Boolean.TRUE,
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "/test/;abcde=fghij", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "OK"},
             { "/start", "/start", DispatcherType.FORWARD, "*.html", 
"/;abcde=fghij", Boolean.TRUE,
                     "/test/;abcde=fghij", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
             { "/start", "/start", DispatcherType.ASYNC, "*.html", 
"/;abcde=fghij", Boolean.TRUE,
                     "/test/;abcde=fghij", "/test", "/index.html", null, null,
-                    MappingMatch.EXTENSION, "*.html", "index", "target",
                     "/test/start", "/test", "/start", null, null,
-                    MappingMatch.EXACT, "/start", "start", "rd",
                     "OK"},
         });
     }
@@ -365,19 +269,11 @@ public class TestApplicationContextGetRe
     private final String expectedServletPath;
     private final String expectedPathInfo;
     private final String expectedQueryString;
-    private final MappingMatch expectedMappingMatch;
-    private final String expectedMappingPattern;
-    private final String expectedMappingMatchValue;
-    private final String expectedMappingServletName;
     private final String expectedDispatcherRequestURI;
     private final String expectedDispatcherContextPath;
     private final String expectedDispatcherServletPath;
     private final String expectedDispatcherPathInfo;
     private final String expectedDispatcherQueryString;
-    private final MappingMatch expectedDispatcherMappingMatch;
-    private final String expectedDispatcherMappingPattern;
-    private final String expectedDispatcherMappingMatchValue;
-    private final String expectedDispatcherMappingServletName;
     private final String expectedBody;
 
 
@@ -385,14 +281,10 @@ public class TestApplicationContextGetRe
             DispatcherType dispatcherType, String targetMapping, String 
targetUri,
             boolean useEncodedDispatchPaths,
             String expectedRequestURI, String expectedContextPath, String 
expectedServletPath,
-            String expectedPathInfo, String expectedQueryString, MappingMatch 
expectedMappingMatch,
-            String expectedMappingPattern, String expectedMappingMatchValue,
-            String expectedMappingServletName,
+            String expectedPathInfo, String expectedQueryString,
             String expectedDispatcherRequestURI, String 
expectedDispatcherContextPath,
             String expectedDispatcherServletPath, String 
expectedDispatcherPathInfo,
-            String expectedDispatcherQueryString, MappingMatch 
expectedDispatcherMappingMatch,
-            String expectedDispatcherMappingPattern, String 
expectedDispatcherMappingMatchValue,
-            String expectedDispatcherMappingServletName,
+            String expectedDispatcherQueryString,
             String expectedBody) {
         this.startMapping = startMapping;
         this.startUri = startUri;
@@ -405,19 +297,11 @@ public class TestApplicationContextGetRe
         this.expectedServletPath = expectedServletPath;
         this.expectedPathInfo = expectedPathInfo;
         this.expectedQueryString = expectedQueryString;
-        this.expectedMappingMatch = expectedMappingMatch;
-        this.expectedMappingPattern = expectedMappingPattern;
-        this.expectedMappingMatchValue = expectedMappingMatchValue;
-        this.expectedMappingServletName = expectedMappingServletName;
         this.expectedDispatcherRequestURI = expectedDispatcherRequestURI;
         this.expectedDispatcherContextPath = expectedDispatcherContextPath;
         this.expectedDispatcherServletPath = expectedDispatcherServletPath;
         this.expectedDispatcherPathInfo = expectedDispatcherPathInfo;
         this.expectedDispatcherQueryString = expectedDispatcherQueryString;
-        this.expectedDispatcherMappingMatch = expectedDispatcherMappingMatch;
-        this.expectedDispatcherMappingPattern = 
expectedDispatcherMappingPattern;
-        this.expectedDispatcherMappingMatchValue = 
expectedDispatcherMappingMatchValue;
-        this.expectedDispatcherMappingServletName = 
expectedDispatcherMappingServletName;
         this.expectedBody = expectedBody;
      }
 
@@ -435,11 +319,11 @@ public class TestApplicationContextGetRe
 
         // Add a target servlet to dispatch to
         Tomcat.addServlet(ctx, "target", new Target());
-        ctx.addServletMappingDecoded(targetMapping, "target");
+        ctx.addServletMapping(targetMapping, "target");
 
         Wrapper w = Tomcat.addServlet(ctx, "rd", new Dispatch());
         w.setAsyncSupported(true);
-        ctx.addServletMappingDecoded(startMapping, "rd");
+        ctx.addServletMapping(startMapping, "rd");
 
         tomcat.start();
 
@@ -528,12 +412,6 @@ public class TestApplicationContextGetRe
             Assert.assertEquals(expectedServletPath, req.getServletPath());
             Assert.assertEquals(expectedPathInfo, req.getPathInfo());
             Assert.assertEquals(expectedQueryString, req.getQueryString());
-            ServletMapping mapping =
-                    
((org.apache.catalina.servlet4preview.http.HttpServletRequest) 
req).getServletMapping();
-            Assert.assertEquals(expectedMappingMatch, 
mapping.getMappingMatch());
-            Assert.assertEquals(expectedMappingPattern, mapping.getPattern());
-            Assert.assertEquals(expectedMappingMatchValue, 
mapping.getMatchValue());
-            Assert.assertEquals(expectedMappingServletName, 
mapping.getServletName());
 
             for (DispatcherType type : DispatcherType.values()) {
                 if (type == dispatcherType) {
@@ -548,18 +426,6 @@ public class TestApplicationContextGetRe
                             req.getAttribute("javax.servlet." + name + 
".path_info"));
                     Assert.assertEquals(expectedDispatcherQueryString,
                             req.getAttribute("javax.servlet." + name + 
".query_string"));
-                    ServletMapping dispatcherMapping =
-                            (ServletMapping) 
((org.apache.catalina.servlet4preview.http.HttpServletRequest) 
req).getAttribute(
-                                    "javax.servlet." + name + ".mapping");
-                    Assert.assertNotNull(dispatcherMapping);
-                    Assert.assertEquals(expectedDispatcherMappingMatch,
-                            dispatcherMapping.getMappingMatch());
-                    Assert.assertEquals(expectedDispatcherMappingPattern,
-                            dispatcherMapping.getPattern());
-                    Assert.assertEquals(expectedDispatcherMappingMatchValue,
-                            dispatcherMapping.getMatchValue());
-                    Assert.assertEquals(expectedDispatcherMappingServletName,
-                            dispatcherMapping.getServletName());
                 } else if (type == DispatcherType.ERROR || type == 
DispatcherType.REQUEST) {
                     // Skip - not tested
                 } else {

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1839610&r1=1839609&r2=1839610&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Aug 29 19:59:31 2018
@@ -104,6 +104,10 @@
       <scode>
         Simplify construction of appName from container name in JAASRealm. 
(fschumacher)
       </scode>
+      <fix>
+        Improve the handling of path parameters when working with
+        RequestDispatcher objects. (markt)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Coyote">



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to