You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2016/08/30 20:08:52 UTC

svn commit: r1758456 [2/3] - in /tomcat/tc8.0.x/trunk: ./ java/org/apache/catalina/ java/org/apache/catalina/core/ java/org/apache/catalina/startup/ java/org/apache/tomcat/util/descriptor/web/ test/javax/servlet/http/ test/org/apache/catalina/authentic...

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcher.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcher.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcher.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcher.java Tue Aug 30 20:08:50 2016
@@ -39,6 +39,7 @@ import org.apache.catalina.startup.Tomca
 import org.apache.catalina.startup.TomcatBaseTest;
 import org.apache.catalina.util.URLEncoder;
 import org.apache.tomcat.util.buf.ByteChunk;
+import org.apache.tomcat.util.buf.UDecoder;
 
 @RunWith(value = Parameterized.class)
 public class TestApplicationContextGetRequestDispatcher extends TomcatBaseTest {
@@ -364,12 +365,11 @@ public class TestApplicationContextGetRe
 
         // Add a default servlet to return 404 for not found resources
         Tomcat.addServlet(ctx, "Default", new Default404Servlet());
-        ctx.addServletMapping("/*", "Default");
+        ctx.addServletMappingDecoded("/*", "Default");
 
         // Add a target servlet to dispatch to
         Tomcat.addServlet(ctx, "target", new TargetServlet());
-        // Note: This will decode the provided path
-        ctx.addServletMapping(targetPath, "target");
+        ctx.addServletMappingDecoded(UDecoder.URLDecode(targetPath, "UTF-8"), "target");
 
         if (useAsync) {
             Wrapper w = Tomcat.addServlet(
@@ -378,8 +378,7 @@ public class TestApplicationContextGetRe
         } else {
             Tomcat.addServlet(ctx, "rd", new DispatcherServlet(dispatchPath));
         }
-        // Note: This will decode the provided path
-        ctx.addServletMapping(startPath, "rd");
+        ctx.addServletMappingDecoded(UDecoder.URLDecode(startPath, "UTF-8"), "rd");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationFilterConfig.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationFilterConfig.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationFilterConfig.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationFilterConfig.java Tue Aug 30 20:08:50 2016
@@ -41,7 +41,7 @@ public class TestApplicationFilterConfig
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "HelloWorld", new HelloWorldServlet());
-        ctx.addServletMapping("/", "HelloWorld");
+        ctx.addServletMappingDecoded("/", "HelloWorld");
 
         // Add a filter with a name that should be escaped if used in a JMX
         // object name

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationHttpRequest.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationHttpRequest.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationHttpRequest.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestApplicationHttpRequest.java Tue Aug 30 20:08:50 2016
@@ -189,10 +189,10 @@ public class TestApplicationHttpRequest
         } else {
             Tomcat.addServlet(ctx, "forward", new ForwardServlet("/display?" + forwardQueryString));
         }
-        ctx.addServletMapping("/forward", "forward");
+        ctx.addServletMappingDecoded("/forward", "forward");
 
         Tomcat.addServlet(ctx, "display", new DisplayParameterServlet(expected));
-        ctx.addServletMapping("/display", "display");
+        ctx.addServletMappingDecoded("/display", "display");
 
         tomcat.start();
 
@@ -219,10 +219,10 @@ public class TestApplicationHttpRequest
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "forward", new ForwardServlet("/modify"));
-        ctx.addServletMapping("/forward", "forward");
+        ctx.addServletMappingDecoded("/forward", "forward");
 
         Tomcat.addServlet(ctx, "modify", new ModifyParameterServlet());
-        ctx.addServletMapping("/modify", "modify");
+        ctx.addServletMappingDecoded("/modify", "modify");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestAsyncContextImpl.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestAsyncContextImpl.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestAsyncContextImpl.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestAsyncContextImpl.java Tue Aug 30 20:08:50 2016
@@ -100,7 +100,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -137,7 +137,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -180,7 +180,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -219,7 +219,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -475,7 +475,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "time", timeout);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/start", "time");
+        ctx.addServletMappingDecoded("/start", "time");
 
         if (asyncDispatch != null) {
             if (asyncDispatch.booleanValue()) {
@@ -484,11 +484,11 @@ public class TestAsyncContextImpl extend
                 Wrapper async =
                         Tomcat.addServlet(ctx, "async", asyncStartRunnable);
                 async.setAsyncSupported(true);
-                ctx.addServletMapping(dispatchUrl, "async");
+                ctx.addServletMappingDecoded(dispatchUrl, "async");
             } else {
                 NonAsyncServlet nonAsync = new NonAsyncServlet();
                 Tomcat.addServlet(ctx, "nonasync", nonAsync);
-                ctx.addServletMapping(dispatchUrl, "nonasync");
+                ctx.addServletMappingDecoded(dispatchUrl, "nonasync");
             }
          }
 
@@ -630,12 +630,12 @@ public class TestAsyncContextImpl extend
         DispatchingServlet dispatch = new DispatchingServlet(false, false);
         Wrapper wrapper = Tomcat.addServlet(ctx, "dispatch", dispatch);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/stage1", "dispatch");
+        ctx.addServletMappingDecoded("/stage1", "dispatch");
 
         NonAsyncServlet nonasync = new NonAsyncServlet();
         Wrapper wrapper2 = Tomcat.addServlet(ctx, "nonasync", nonasync);
         wrapper2.setAsyncSupported(true);
-        ctx.addServletMapping("/stage2", "nonasync");
+        ctx.addServletMappingDecoded("/stage2", "nonasync");
 
         ctx.addApplicationListener(TrackingRequestListener.class.getName());
 
@@ -749,12 +749,12 @@ public class TestAsyncContextImpl extend
         TrackingServlet tracking = new TrackingServlet();
         Wrapper wrapper = Tomcat.addServlet(ctx, "tracking", tracking);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/stage1", "tracking");
+        ctx.addServletMappingDecoded("/stage1", "tracking");
 
         TimeoutServlet timeout = new TimeoutServlet(Boolean.TRUE, null);
         Wrapper wrapper2 = Tomcat.addServlet(ctx, "timeout", timeout);
         wrapper2.setAsyncSupported(true);
-        ctx.addServletMapping("/stage2", "timeout");
+        ctx.addServletMappingDecoded("/stage2", "timeout");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -972,11 +972,11 @@ public class TestAsyncContextImpl extend
             new DispatchingServlet(true, completeOnError);
         Wrapper wrapper = Tomcat.addServlet(ctx, "dispatch", dispatch);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/stage1", "dispatch");
+        ctx.addServletMappingDecoded("/stage1", "dispatch");
 
         ErrorServlet error = new ErrorServlet();
         Tomcat.addServlet(ctx, "error", error);
-        ctx.addServletMapping("/stage2", "error");
+        ctx.addServletMappingDecoded("/stage2", "error");
 
         ctx.addApplicationListener(TrackingRequestListener.class.getName());
 
@@ -1050,7 +1050,7 @@ public class TestAsyncContextImpl extend
         AsyncStartRunnable servlet = new AsyncStartRunnable();
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -1118,7 +1118,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -1181,7 +1181,7 @@ public class TestAsyncContextImpl extend
 
         ErrorServlet error = new ErrorServlet();
         Tomcat.addServlet(ctx, "error", error);
-        ctx.addServletMapping("/error", "error");
+        ctx.addServletMappingDecoded("/error", "error");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -1218,7 +1218,7 @@ public class TestAsyncContextImpl extend
         Wrapper wrapper =
             Tomcat.addServlet(ctx, "asyncStatusServlet", asyncStatusServlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/asyncStatusServlet", "asyncStatusServlet");
+        ctx.addServletMappingDecoded("/asyncStatusServlet", "asyncStatusServlet");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -1296,12 +1296,12 @@ public class TestAsyncContextImpl extend
         Wrapper wrapper =
             Tomcat.addServlet(ctx, "asyncErrorServlet", asyncErrorServlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/asyncErrorServlet", "asyncErrorServlet");
+        ctx.addServletMappingDecoded("/asyncErrorServlet", "asyncErrorServlet");
 
         if (customError) {
             CustomErrorServlet customErrorServlet = new CustomErrorServlet();
             Tomcat.addServlet(ctx, "customErrorServlet", customErrorServlet);
-            ctx.addServletMapping("/customErrorServlet", "customErrorServlet");
+            ctx.addServletMappingDecoded("/customErrorServlet", "customErrorServlet");
 
             ErrorPage ep = new ErrorPage();
             ep.setLocation("/customErrorServlet");
@@ -1413,9 +1413,9 @@ public class TestAsyncContextImpl extend
         Wrapper b = Tomcat.addServlet(ctx, "ServletB", new Bug53337ServletB());
         b.setAsyncSupported(true);
         Tomcat.addServlet(ctx, "ServletC", new Bug53337ServletC());
-        ctx.addServletMapping("/ServletA", "ServletA");
-        ctx.addServletMapping("/ServletB", "ServletB");
-        ctx.addServletMapping("/ServletC", "ServletC");
+        ctx.addServletMappingDecoded("/ServletA", "ServletA");
+        ctx.addServletMappingDecoded("/ServletB", "ServletB");
+        ctx.addServletMappingDecoded("/ServletC", "ServletC");
 
         tomcat.start();
 
@@ -1493,8 +1493,8 @@ public class TestAsyncContextImpl extend
         a.setAsyncSupported(true);
         Tomcat.addServlet(ctx, "ServletB", new Bug53843ServletB());
 
-        ctx.addServletMapping("/ServletA", "ServletA");
-        ctx.addServletMapping("/ServletB", "ServletB");
+        ctx.addServletMappingDecoded("/ServletA", "ServletA");
+        ctx.addServletMappingDecoded("/ServletB", "ServletB");
 
         tomcat.start();
 
@@ -1604,17 +1604,17 @@ public class TestAsyncContextImpl extend
         TimeoutServlet timeout = new TimeoutServlet(null, null);
         Wrapper w1 = Tomcat.addServlet(ctx, "time", timeout);
         w1.setAsyncSupported(true);
-        ctx.addServletMapping("/async", "time");
+        ctx.addServletMappingDecoded("/async", "time");
 
         NonAsyncServlet nonAsync = new NonAsyncServlet();
         Wrapper w2 = Tomcat.addServlet(ctx, "nonAsync", nonAsync);
         w2.setAsyncSupported(true);
-        ctx.addServletMapping("/error/nonasync", "nonAsync");
+        ctx.addServletMappingDecoded("/error/nonasync", "nonAsync");
 
         AsyncErrorPage asyncErrorPage = new AsyncErrorPage(mode);
         Wrapper w3 = Tomcat.addServlet(ctx, "asyncErrorPage", asyncErrorPage);
         w3.setAsyncSupported(true);
-        ctx.addServletMapping("/error/async", "asyncErrorPage");
+        ctx.addServletMappingDecoded("/error/async", "asyncErrorPage");
 
         if (asyncError != null) {
             ErrorPage ep = new ErrorPage();
@@ -1734,11 +1734,11 @@ public class TestAsyncContextImpl extend
         Wrapper wrapper =
             Tomcat.addServlet(ctx, "bug54178ServletA", bug54178ServletA);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/bug54178ServletA", "bug54178ServletA");
+        ctx.addServletMappingDecoded("/bug54178ServletA", "bug54178ServletA");
 
         Bug54178ServletB bug54178ServletB = new Bug54178ServletB();
         Tomcat.addServlet(ctx, "bug54178ServletB", bug54178ServletB);
-        ctx.addServletMapping("/bug54178ServletB", "bug54178ServletB");
+        ctx.addServletMappingDecoded("/bug54178ServletB", "bug54178ServletB");
 
         tomcat.start();
 
@@ -1844,7 +1844,7 @@ public class TestAsyncContextImpl extend
         Context ctx = tomcat.addContext("", null);
         Wrapper w = tomcat.addServlet("", "async", new Bug59219Servlet());
         w.setAsyncSupported(true);
-        ctx.addServletMapping("/async", "async");
+        ctx.addServletMappingDecoded("/async", "async");
 
         tomcat.start();
 
@@ -1907,13 +1907,13 @@ public class TestAsyncContextImpl extend
         Wrapper wrapper = Tomcat.addServlet(ctx, "nonAsyncServlet",
                 nonAsyncServlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/target", "nonAsyncServlet");
+        ctx.addServletMappingDecoded("/target", "nonAsyncServlet");
 
         DispatchingGenericServlet forbiddenDispatchingServlet = new DispatchingGenericServlet();
         Wrapper wrapper1 = Tomcat.addServlet(ctx,
                 "forbiddenDispatchingServlet", forbiddenDispatchingServlet);
         wrapper1.setAsyncSupported(true);
-        ctx.addServletMapping("/forbiddenDispatchingServlet",
+        ctx.addServletMappingDecoded("/forbiddenDispatchingServlet",
                 "forbiddenDispatchingServlet");
 
         tomcat.start();
@@ -1997,7 +1997,7 @@ public class TestAsyncContextImpl extend
 
         Wrapper w = Tomcat.addServlet(ctx, "AsyncISEServlet", servlet);
         w.setAsyncSupported(true);
-        ctx.addServletMapping("/test", "AsyncISEServlet");
+        ctx.addServletMappingDecoded("/test", "AsyncISEServlet");
 
         tomcat.start();
 
@@ -2133,13 +2133,13 @@ public class TestAsyncContextImpl extend
         DispatchingGenericServlet dispatch = new DispatchingGenericServlet();
         Wrapper wrapper = Tomcat.addServlet(ctx, "dispatch", dispatch);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/dispatch", "dispatch");
+        ctx.addServletMappingDecoded("/dispatch", "dispatch");
 
         CustomGenericServlet customGeneric = new CustomGenericServlet();
         Wrapper wrapper2 = Tomcat.addServlet(ctx, "customGeneric",
                 customGeneric);
         wrapper2.setAsyncSupported(true);
-        ctx.addServletMapping("/target", "customGeneric");
+        ctx.addServletMappingDecoded("/target", "customGeneric");
 
         tomcat.start();
     }
@@ -2175,16 +2175,16 @@ public class TestAsyncContextImpl extend
         Servlet stage1 = new DispatchingServletTracking("/stage2", true);
         Wrapper wrapper1 = Tomcat.addServlet(ctx, "stage1", stage1);
         wrapper1.setAsyncSupported(true);
-        ctx.addServletMapping("/stage1", "stage1");
+        ctx.addServletMappingDecoded("/stage1", "stage1");
 
         Servlet stage2 = new DispatchingServletTracking("/stage3", false);
         Wrapper wrapper2 = Tomcat.addServlet(ctx, "stage2", stage2);
         wrapper2.setAsyncSupported(true);
-        ctx.addServletMapping("/stage2", "stage2");
+        ctx.addServletMappingDecoded("/stage2", "stage2");
 
         Servlet stage3 = new NonAsyncServlet();
         Tomcat.addServlet(ctx, "stage3", stage3);
-        ctx.addServletMapping("/stage3", "stage3");
+        ctx.addServletMappingDecoded("/stage3", "stage3");
 
         TesterAccessLogValve alv = new TesterAccessLogValve();
         ctx.getPipeline().addValve(alv);
@@ -2234,7 +2234,7 @@ public class TestAsyncContextImpl extend
         Servlet servlet = new AsyncRequestUriServlet();
         Wrapper wrapper1 = Tomcat.addServlet(ctx, "bug57559", servlet);
         wrapper1.setAsyncSupported(true);
-        ctx.addServletMapping("/", "bug57559");
+        ctx.addServletMappingDecoded("/", "bug57559");
 
         tomcat.start();
 
@@ -2274,17 +2274,17 @@ public class TestAsyncContextImpl extend
 
         NonAsyncServlet nonAsyncServlet = new NonAsyncServlet();
         Tomcat.addServlet(ctx, "nonAsyncServlet", nonAsyncServlet);
-        ctx.addServletMapping("/target", "nonAsyncServlet");
+        ctx.addServletMappingDecoded("/target", "nonAsyncServlet");
 
         AsyncStashServlet asyncStashServlet = new AsyncStashServlet();
         Wrapper w1 = Tomcat.addServlet(ctx, "asyncStashServlet", asyncStashServlet);
         w1.setAsyncSupported(true);
-        ctx.addServletMapping("/asyncStashServlet", "asyncStashServlet");
+        ctx.addServletMappingDecoded("/asyncStashServlet", "asyncStashServlet");
 
         AsyncRetrieveServlet asyncRetrieveServlet = new AsyncRetrieveServlet();
         Wrapper w2 = Tomcat.addServlet(ctx, "asyncRetrieveServlet", asyncRetrieveServlet);
         w2.setAsyncSupported(true);
-        ctx.addServletMapping("/asyncRetrieveServlet", "asyncRetrieveServlet");
+        ctx.addServletMappingDecoded("/asyncRetrieveServlet", "asyncRetrieveServlet");
 
         tomcat.start();
 
@@ -2377,8 +2377,8 @@ public class TestAsyncContextImpl extend
                 .setAsyncSupported(true);
         CustomErrorServlet customErrorServlet = new CustomErrorServlet();
         Tomcat.addServlet(context, "customErrorServlet", customErrorServlet);
-        context.addServletMapping("/timeout", "timeout");
-        context.addServletMapping("/error", "customErrorServlet");
+        context.addServletMappingDecoded("/timeout", "timeout");
+        context.addServletMappingDecoded("/error", "customErrorServlet");
         ErrorPage errorPage = new ErrorPage();
         errorPage.setLocation("/error");
         context.addErrorPage(errorPage);
@@ -2506,7 +2506,7 @@ public class TestAsyncContextImpl extend
         } else {
             Tomcat.addServlet(context, "space", new ForwardDispatchUrlWithSpacesServlet());
         }
-        context.addServletMapping("/space/*", "space");
+        context.addServletMappingDecoded("/space/*", "space");
         tomcat.start();
 
         ByteChunk responseBody = new ByteChunk();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContext.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContext.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContext.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContext.java Tue Aug 30 20:08:50 2016
@@ -139,13 +139,13 @@ public class TestStandardContext extends
         context.addFilterDef(filterDef);
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName("Bug46243");
-        filterMap.addURLPattern("*");
+        filterMap.addURLPatternDecoded("*");
         context.addFilterMap(filterMap);
 
         // Add a test servlet so there is something to generate a response if
         // it works (although it shouldn't)
         Tomcat.addServlet(context, "Bug46243", new HelloWorldServlet());
-        context.addServletMapping("/", "Bug46243");
+        context.addServletMappingDecoded("/", "Bug46243");
     }
 
     private static final class Bug46243Client extends SimpleHttpClient {
@@ -749,8 +749,8 @@ public class TestStandardContext extends
             // to set our own MultipartConfigElement.
             w.setMultipartConfigElement(new MultipartConfigElement(""));
 
-            context.addServletMapping("/regular", "regular");
-            context.addServletMapping("/multipart", "multipart");
+            context.addServletMappingDecoded("/regular", "regular");
+            context.addServletMappingDecoded("/multipart", "multipart");
             tomcat.start();
 
             setPort(tomcat.getConnector().getLocalPort());

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextAliases.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextAliases.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextAliases.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextAliases.java Tue Aug 30 20:08:50 2016
@@ -56,7 +56,7 @@ public class TestStandardContextAliases
 
 
         Tomcat.addServlet(ctx, "test", new TestServlet());
-        ctx.addServletMapping("/", "test");
+        ctx.addServletMappingDecoded("/", "test");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextResources.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextResources.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextResources.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextResources.java Tue Aug 30 20:08:50 2016
@@ -138,7 +138,7 @@ public class TestStandardContextResource
                 appDir.getAbsolutePath(), absoluteOrderConfig);
 
         Tomcat.addServlet(ctx, "getresource", new GetResourceServlet());
-        ctx.addServletMapping("/getresource", "getresource");
+        ctx.addServletMappingDecoded("/getresource", "getresource");
 
         tomcat.start();
         assertPageContains("/test/getresource?path=/resourceF.jsp",
@@ -159,7 +159,7 @@ public class TestStandardContextResource
         ctx = (StandardContext) tomcat.addWebapp(null, "/test",
                 appDir.getAbsolutePath(), absoluteOrderConfig);
         Tomcat.addServlet(ctx, "getresource", new GetResourceServlet());
-        ctx.addServletMapping("/getresource", "getresource");
+        ctx.addServletMappingDecoded("/getresource", "getresource");
 
         tomcat.getHost().start();
 
@@ -213,7 +213,7 @@ public class TestStandardContextResource
                 appDir.getAbsolutePath());
 
         Tomcat.addServlet(ctx, "getresource", new GetResourceServlet());
-        ctx.addServletMapping("/getresource", "getresource");
+        ctx.addServletMappingDecoded("/getresource", "getresource");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextValve.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextValve.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextValve.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardContextValve.java Tue Aug 30 20:08:50 2016
@@ -50,7 +50,7 @@ public class TestStandardContextValve ex
 
         //Add the error page
         Tomcat.addServlet(ctx, "errorPage", new Bug51653ErrorPage(trace));
-        ctx.addServletMapping("/error", "errorPage");
+        ctx.addServletMappingDecoded("/error", "errorPage");
         // And the handling for 404 responses
         ErrorPage errorPage = new ErrorPage();
         errorPage.setErrorCode(Response.SC_NOT_FOUND);
@@ -96,11 +96,11 @@ public class TestStandardContextValve ex
 
         // Add the page that generates the error
         Tomcat.addServlet(ctx, "test", new Bug51653ErrorTrigger());
-        ctx.addServletMapping("/test", "test");
+        ctx.addServletMappingDecoded("/test", "test");
 
         // Add the error page
         Tomcat.addServlet(ctx, "errorPage", new Bug51653ErrorPage(trace));
-        ctx.addServletMapping("/error", "errorPage");
+        ctx.addServletMappingDecoded("/error", "errorPage");
         // And the handling for 404 responses
         ErrorPage errorPage = new ErrorPage();
         errorPage.setErrorCode(Response.SC_NOT_FOUND);

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardHostValve.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardHostValve.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardHostValve.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardHostValve.java Tue Aug 30 20:08:50 2016
@@ -49,11 +49,11 @@ public class TestStandardHostValve exten
 
         // Add the error page
         Tomcat.addServlet(ctx, "error", new ErrorServlet());
-        ctx.addServletMapping("/error", "error");
+        ctx.addServletMappingDecoded("/error", "error");
 
         // Add the error handling page
         Tomcat.addServlet(ctx, "report", new ReportServlet());
-        ctx.addServletMapping("/report/*", "report");
+        ctx.addServletMappingDecoded("/report/*", "report");
 
         // And the handling for 500 responses
         ErrorPage errorPage500 = new ErrorPage();
@@ -99,7 +99,7 @@ public class TestStandardHostValve exten
 
         // Add the error page
         Tomcat.addServlet(ctx, "error", new ErrorServlet());
-        ctx.addServletMapping("/error", "error");
+        ctx.addServletMappingDecoded("/error", "error");
 
         final List<String> result = new ArrayList<>();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardWrapper.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardWrapper.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardWrapper.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestStandardWrapper.java Tue Aug 30 20:08:50 2016
@@ -279,7 +279,7 @@ public class TestStandardWrapper extends
 
         Wrapper wrapper = Tomcat.addServlet(ctx, "servlet", servletClassName);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         if (useRole) {
             TesterMapRealm realm = new TesterMapRealm();
@@ -427,7 +427,7 @@ public class TestStandardWrapper extends
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "Bug51445", new Bug51445Servlet());
-        ctx.addServletMapping("/", "Bug51445");
+        ctx.addServletMappingDecoded("/", "Bug51445");
 
         tomcat.start();
 
@@ -473,7 +473,7 @@ public class TestStandardWrapper extends
         wrapper.setServletName("Bug51445");
         wrapper.setServletClass(Bug51445Servlet.class.getName());
         ctx.addChild(wrapper);
-        ctx.addServletMapping("/", "Bug51445");
+        ctx.addServletMappingDecoded("/", "Bug51445");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestSwallowAbortedUploads.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestSwallowAbortedUploads.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestSwallowAbortedUploads.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/core/TestSwallowAbortedUploads.java Tue Aug 30 20:08:50 2016
@@ -252,7 +252,7 @@ public class TestSwallowAbortedUploads e
             } else {
                 w.setMultipartConfigElement(new MultipartConfigElement(""));
             }
-            context.addServletMapping(URI, servletName);
+            context.addServletMappingDecoded(URI, servletName);
             context.setSwallowAbortedUploads(swallow);
 
             tomcat.start();
@@ -360,7 +360,7 @@ public class TestSwallowAbortedUploads e
             servlet.setStatus(status);
             Tomcat.addServlet(context, servletName,
                               servlet);
-            context.addServletMapping(URI, servletName);
+            context.addServletMappingDecoded(URI, servletName);
             context.setSwallowAbortedUploads(swallow);
 
             tomcat.start();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestAddCharSetFilter.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestAddCharSetFilter.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestAddCharSetFilter.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestAddCharSetFilter.java Tue Aug 30 20:08:50 2016
@@ -97,7 +97,7 @@ public class TestAddCharSetFilter extend
         // Add the Servlet
         CharsetServlet servlet = new CharsetServlet(mode);
         Tomcat.addServlet(ctx, "servlet", servlet);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         // Add the Filter
         FilterDef filterDef = new FilterDef();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestExpiresFilter.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestExpiresFilter.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestExpiresFilter.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestExpiresFilter.java Tue Aug 30 20:08:50 2016
@@ -75,7 +75,7 @@ public class TestExpiresFilter extends T
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName(ExpiresFilter.class.getName());
-        filterMap.addURLPattern("*");
+        filterMap.addURLPatternDecoded("*");
 
         tomcat.start();
         try {
@@ -396,11 +396,11 @@ public class TestExpiresFilter extends T
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName(ExpiresFilter.class.getName());
-        filterMap.addURLPattern("*");
+        filterMap.addURLPatternDecoded("*");
         root.addFilterMap(filterMap);
 
         Tomcat.addServlet(root, servlet.getClass().getName(), servlet);
-        root.addServletMapping("/test", servlet.getClass().getName());
+        root.addServletMappingDecoded("/test", servlet.getClass().getName());
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRemoteIpFilter.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRemoteIpFilter.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRemoteIpFilter.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRemoteIpFilter.java Tue Aug 30 20:08:50 2016
@@ -516,7 +516,7 @@ public class TestRemoteIpFilter extends
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName(RemoteIpFilter.class.getName());
-        filterMap.addURLPattern("*");
+        filterMap.addURLPatternDecoded("*");
         root.addFilterMap(filterMap);
 
         getTomcatInstance().start();
@@ -583,13 +583,13 @@ public class TestRemoteIpFilter extends
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName(RemoteIpFilter.class.getName());
-        filterMap.addURLPattern("*");
+        filterMap.addURLPatternDecoded("*");
         root.addFilterMap(filterMap);
 
         MockHttpServlet mockServlet = new MockHttpServlet();
 
         Tomcat.addServlet(root, mockServlet.getClass().getName(), mockServlet);
-        root.addServletMapping("/test", mockServlet.getClass().getName());
+        root.addServletMappingDecoded("/test", mockServlet.getClass().getName());
 
         getTomcatInstance().start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRestCsrfPreventionFilter2.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRestCsrfPreventionFilter2.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRestCsrfPreventionFilter2.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/filters/TestRestCsrfPreventionFilter2.java Tue Aug 30 20:08:50 2016
@@ -290,7 +290,7 @@ public class TestRestCsrfPreventionFilte
         context.setSessionTimeout(SHORT_SESSION_TIMEOUT_MINS);
 
         Tomcat.addServlet(context, SERVLET_NAME, new TesterServlet());
-        context.addServletMapping(URI_PROTECTED, SERVLET_NAME);
+        context.addServletMappingDecoded(URI_PROTECTED, SERVLET_NAME);
 
         FilterDef filterDef = new FilterDef();
         filterDef.setFilterName(FILTER_NAME);
@@ -300,11 +300,11 @@ public class TestRestCsrfPreventionFilte
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName(FILTER_NAME);
-        filterMap.addURLPattern(URI_CSRF_PROTECTED);
+        filterMap.addURLPatternDecoded(URI_CSRF_PROTECTED);
         context.addFilterMap(filterMap);
 
         SecurityCollection collection = new SecurityCollection();
-        collection.addPattern(URI_PROTECTED);
+        collection.addPatternDecoded(URI_PROTECTED);
 
         SecurityConstraint sc = new SecurityConstraint();
         sc.addAuthRole(ROLE);

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/ha/context/TestReplicatedContext.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/ha/context/TestReplicatedContext.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/ha/context/TestReplicatedContext.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/ha/context/TestReplicatedContext.java Tue Aug 30 20:08:50 2016
@@ -49,7 +49,7 @@ public class TestReplicatedContext exten
         Context context = tomcat.addWebapp(host, "", root.getAbsolutePath());
 
         Tomcat.addServlet(context, "test", new AccessContextServlet());
-        context.addServletMapping("/access", "test");
+        context.addServletMappingDecoded("/access", "test");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderExecutorMemoryLeak.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderExecutorMemoryLeak.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderExecutorMemoryLeak.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderExecutorMemoryLeak.java Tue Aug 30 20:08:50 2016
@@ -50,7 +50,7 @@ public class TestWebappClassLoaderExecut
 
         ExecutorServlet executorServlet = new ExecutorServlet();
         Tomcat.addServlet(ctx, "taskServlet", executorServlet);
-        ctx.addServletMapping("/", "taskServlet");
+        ctx.addServletMappingDecoded("/", "taskServlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderMemoryLeak.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderMemoryLeak.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderMemoryLeak.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderMemoryLeak.java Tue Aug 30 20:08:50 2016
@@ -48,7 +48,7 @@ public class TestWebappClassLoaderMemory
         }
 
         Tomcat.addServlet(ctx, "taskServlet", new TaskServlet());
-        ctx.addServletMapping("/", "taskServlet");
+        ctx.addServletMappingDecoded("/", "taskServlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderThreadLocalMemoryLeak.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderThreadLocalMemoryLeak.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderThreadLocalMemoryLeak.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/loader/TestWebappClassLoaderThreadLocalMemoryLeak.java Tue Aug 30 20:08:50 2016
@@ -68,7 +68,7 @@ public class TestWebappClassLoaderThread
 
         Tomcat.addServlet(ctx, "leakServlet1",
                 "org.apache.tomcat.unittest.TesterLeakingServlet1");
-        ctx.addServletMapping("/leak1", "leakServlet1");
+        ctx.addServletMappingDecoded("/leak1", "leakServlet1");
 
         tomcat.start();
 
@@ -124,7 +124,7 @@ public class TestWebappClassLoaderThread
 
         Tomcat.addServlet(ctx, "leakServlet2",
                 "org.apache.tomcat.unittest.TesterLeakingServlet2");
-        ctx.addServletMapping("/leak2", "leakServlet2");
+        ctx.addServletMappingDecoded("/leak2", "leakServlet2");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/mapper/TestMapperWebapps.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/mapper/TestMapperWebapps.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/mapper/TestMapperWebapps.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/mapper/TestMapperWebapps.java Tue Aug 30 20:08:50 2016
@@ -54,7 +54,7 @@ public class TestMapperWebapps extends T
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "Bug53356", new Bug53356Servlet());
-        ctx.addServletMapping("", "Bug53356");
+        ctx.addServletMappingDecoded("", "Bug53356");
 
         tomcat.start();
 
@@ -245,8 +245,8 @@ public class TestMapperWebapps extends T
             // Add a security constraint
             SecurityConstraint constraint = new SecurityConstraint();
             SecurityCollection collection = new SecurityCollection();
-            collection.addPattern("/welcome-files/*");
-            collection.addPattern("/welcome-files");
+            collection.addPatternDecoded("/welcome-files/*");
+            collection.addPatternDecoded("/welcome-files");
             constraint.addCollection(collection);
             constraint.addAuthRole("foo");
             root.addConstraint(constraint);

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java Tue Aug 30 20:08:50 2016
@@ -111,7 +111,7 @@ public class TestNonBlockingAPI extends
         NBReadServlet servlet = new NBReadServlet(ignoreIsReady);
         String servletName = NBReadServlet.class.getName();
         Tomcat.addServlet(ctx, servletName, servlet);
-        ctx.addServletMapping("/", servletName);
+        ctx.addServletMappingDecoded("/", servletName);
 
         tomcat.start();
 
@@ -132,7 +132,7 @@ public class TestNonBlockingAPI extends
         NBWriteServlet servlet = new NBWriteServlet();
         String servletName = NBWriteServlet.class.getName();
         Tomcat.addServlet(ctx, servletName, servlet);
-        ctx.addServletMapping("/", servletName);
+        ctx.addServletMappingDecoded("/", servletName);
         tomcat.getConnector().setProperty("socket.txBufSize", "1024");
         tomcat.start();
 
@@ -280,7 +280,7 @@ public class TestNonBlockingAPI extends
         NBWriteServlet servlet = new NBWriteServlet();
         String servletName = NBWriteServlet.class.getName();
         Tomcat.addServlet(ctx, servletName, servlet);
-        ctx.addServletMapping("/", servletName);
+        ctx.addServletMappingDecoded("/", servletName);
         tomcat.getConnector().setProperty("socket.txBufSize", "1024");
         tomcat.start();
 
@@ -363,7 +363,7 @@ public class TestNonBlockingAPI extends
         NBReadWriteServlet servlet = new NBReadWriteServlet();
         String servletName = NBReadWriteServlet.class.getName();
         Tomcat.addServlet(ctx, servletName, servlet);
-        ctx.addServletMapping("/", servletName);
+        ctx.addServletMappingDecoded("/", servletName);
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/realm/TestRealmBase.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/realm/TestRealmBase.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/realm/TestRealmBase.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/realm/TestRealmBase.java Tue Aug 30 20:08:50 2016
@@ -660,7 +660,7 @@ public class TestRealmBase {
         deleteConstraint.addAuthRole(ROLE1);
         SecurityCollection deleteCollection = new SecurityCollection();
         deleteCollection.addMethod("DELETE");
-        deleteCollection.addPattern("/*");
+        deleteCollection.addPatternDecoded("/*");
         deleteConstraint.addCollection(deleteCollection);
 
         TesterMapRealm mapRealm = new TesterMapRealm();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestDefaultServlet.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestDefaultServlet.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestDefaultServlet.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestDefaultServlet.java Tue Aug 30 20:08:50 2016
@@ -112,7 +112,7 @@ public class TestDefaultServlet extends
         Wrapper defaultServlet = Tomcat.addServlet(ctxt, "default",
                 "org.apache.catalina.servlets.DefaultServlet");
         defaultServlet.addInitParameter("gzip", "true");
-        ctxt.addServletMapping("/", "default");
+        ctxt.addServletMappingDecoded("/", "default");
 
         ctxt.addMimeMapping("html", "text/html");
 
@@ -164,9 +164,9 @@ public class TestDefaultServlet extends
 
         // Override the default servlet with our own mappings
         Tomcat.addServlet(ctx, "default2", new DefaultServlet());
-        ctx.addServletMapping("/", "default2");
-        ctx.addServletMapping("/servlets/*", "default2");
-        ctx.addServletMapping("/static/*", "default2");
+        ctx.addServletMappingDecoded("/", "default2");
+        ctx.addServletMappingDecoded("/servlets/*", "default2");
+        ctx.addServletMappingDecoded("/static/*", "default2");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestWebdavServlet.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestWebdavServlet.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestWebdavServlet.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/servlets/TestWebdavServlet.java Tue Aug 30 20:08:50 2016
@@ -49,7 +49,7 @@ public class TestWebdavServlet extends T
             tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath());
 
         Tomcat.addServlet(ctx, "webdav", new WebdavServlet());
-        ctx.addServletMapping("/*", "webdav");
+        ctx.addServletMappingDecoded("/*", "webdav");
 
         tomcat.start();
 
@@ -93,7 +93,7 @@ public class TestWebdavServlet extends T
             tomcat.addWebapp(null, "/examples", appDir.getAbsolutePath());
 
         Tomcat.addServlet(ctx, "webdav", new WebdavServlet());
-        ctx.addServletMapping("/webdav/*", "webdav");
+        ctx.addServletMappingDecoded("/webdav/*", "webdav");
         ctx.addApplicationListener(WsContextListener.class.getName());
 
         tomcat.start();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestPersistentManagerIntegration.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestPersistentManagerIntegration.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestPersistentManagerIntegration.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestPersistentManagerIntegration.java Tue Aug 30 20:08:50 2016
@@ -102,7 +102,7 @@ public class TestPersistentManagerIntegr
         ctx.setDistributable(true);
 
         Tomcat.addServlet(ctx, "DummyServlet", new DummyServlet());
-        ctx.addServletMapping("/dummy", "DummyServlet");
+        ctx.addServletMappingDecoded("/dummy", "DummyServlet");
 
         PersistentManager manager = new PersistentManager();
         TesterStore store = new TesterStore();
@@ -134,7 +134,7 @@ public class TestPersistentManagerIntegr
         ctx.setDistributable(true);
 
         Tomcat.addServlet(ctx, "DummyServlet", new DummyServlet());
-        ctx.addServletMapping("/dummy", "DummyServlet");
+        ctx.addServletMappingDecoded("/dummy", "DummyServlet");
 
         PersistentManager manager = new PersistentManager();
         TesterStore store = new TesterStore();
@@ -166,7 +166,7 @@ public class TestPersistentManagerIntegr
         ctx.setDistributable(true);
 
         Tomcat.addServlet(ctx, "DummyServlet", new DummyServlet());
-        ctx.addServletMapping("/dummy", "DummyServlet");
+        ctx.addServletMappingDecoded("/dummy", "DummyServlet");
 
         PersistentManager manager = new PersistentManager();
         TesterStore store = new TesterStore();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestStandardSessionIntegration.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestStandardSessionIntegration.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestStandardSessionIntegration.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/session/TestStandardSessionIntegration.java Tue Aug 30 20:08:50 2016
@@ -57,7 +57,7 @@ public class TestStandardSessionIntegrat
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "bug56578", new Bug56578Servlet());
-        ctx.addServletMapping("/bug56578", "bug56578");
+        ctx.addServletMappingDecoded("/bug56578", "bug56578");
 
         if (useClustering) {
             tomcat.getEngine().setCluster(new SimpleTcpCluster());

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfig.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfig.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfig.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfig.java Tue Aug 30 20:08:50 2016
@@ -111,7 +111,7 @@ public class TestContextConfig extends T
 
         Tomcat.addServlet(context, "TestServlet",
                 "org.apache.catalina.startup.TesterServletWithLifeCycleMethods");
-        context.addServletMapping("/testServlet", "TestServlet");
+        context.addServletMappingDecoded("/testServlet", "TestServlet");
 
         tomcat.enableNaming();
 
@@ -130,7 +130,7 @@ public class TestContextConfig extends T
 
         Tomcat.addServlet(context, "TestServlet",
                 "org.apache.catalina.startup.TesterServletWithAnnotations");
-        context.addServletMapping("/testServlet", "TestServlet");
+        context.addServletMappingDecoded("/testServlet", "TestServlet");
 
         tomcat.enableNaming();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfigAnnotation.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfigAnnotation.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfigAnnotation.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestContextConfigAnnotation.java Tue Aug 30 20:08:50 2016
@@ -207,7 +207,7 @@ public class TestContextConfigAnnotation
 
         webxml.addFilter(filterDef);
         FilterMap filterMap = new FilterMap();
-        filterMap.addURLPattern("/param1");
+        filterMap.addURLPatternDecoded("/param1");
         filterMap.setFilterName("paramFilter");
         webxml.addFilterMapping(filterMap);
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcat.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcat.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcat.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcat.java Tue Aug 30 20:08:50 2016
@@ -190,7 +190,7 @@ public class TestTomcat extends TomcatBa
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "myServlet", new HelloWorld());
-        ctx.addServletMapping("/", "myServlet");
+        ctx.addServletMappingDecoded("/", "myServlet");
 
         tomcat.start();
 
@@ -241,7 +241,7 @@ public class TestTomcat extends TomcatBa
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "myServlet", new HelloWorldSession());
-        ctx.addServletMapping("/", "myServlet");
+        ctx.addServletMappingDecoded("/", "myServlet");
 
         tomcat.start();
 
@@ -280,7 +280,7 @@ public class TestTomcat extends TomcatBa
         ctx.getNamingResources().addEnvironment(environment);
 
         Tomcat.addServlet(ctx, "jndiServlet", new HelloWorldJndi());
-        ctx.addServletMapping("/", "jndiServlet");
+        ctx.addServletMappingDecoded("/", "jndiServlet");
 
         tomcat.start();
 
@@ -314,7 +314,7 @@ public class TestTomcat extends TomcatBa
         ctx.getNamingResources().addResourceLink(link);
 
         Tomcat.addServlet(ctx, "jndiServlet", new HelloWorldJndi());
-        ctx.addServletMapping("/", "jndiServlet");
+        ctx.addServletMappingDecoded("/", "jndiServlet");
 
         tomcat.start();
 
@@ -339,7 +339,7 @@ public class TestTomcat extends TomcatBa
         ctx.addApplicationListener(WsContextListener.class.getName());
 
         Tomcat.addServlet(ctx, "testGetResource", new GetResource());
-        ctx.addServletMapping("/testGetResource", "testGetResource");
+        ctx.addServletMappingDecoded("/testGetResource", "testGetResource");
 
         tomcat.start();
 
@@ -379,7 +379,7 @@ public class TestTomcat extends TomcatBa
 
         InitCount initCount = new InitCount();
         Tomcat.addServlet(ctx, "initCount", initCount);
-        ctx.addServletMapping("/", "initCount");
+        ctx.addServletMappingDecoded("/", "initCount");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcatClassLoader.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcatClassLoader.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcatClassLoader.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestTomcatClassLoader.java Tue Aug 30 20:08:50 2016
@@ -44,7 +44,7 @@ public class TestTomcatClassLoader exten
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "ClassLoaderReport", new ClassLoaderReport(null));
-        ctx.addServletMapping("/", "ClassLoaderReport");
+        ctx.addServletMappingDecoded("/", "ClassLoaderReport");
 
         tomcat.start();
 
@@ -67,7 +67,7 @@ public class TestTomcatClassLoader exten
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "ClassLoaderReport", new ClassLoaderReport(cl));
-        ctx.addServletMapping("/", "ClassLoaderReport");
+        ctx.addServletMappingDecoded("/", "ClassLoaderReport");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/catalina/valves/TestErrorReportValve.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/catalina/valves/TestErrorReportValve.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/catalina/valves/TestErrorReportValve.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/catalina/valves/TestErrorReportValve.java Tue Aug 30 20:08:50 2016
@@ -44,7 +44,7 @@ public class TestErrorReportValve extend
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "errorServlet", new ErrorServlet());
-        ctx.addServletMapping("/", "errorServlet");
+        ctx.addServletMappingDecoded("/", "errorServlet");
 
         tomcat.start();
 
@@ -77,7 +77,7 @@ public class TestErrorReportValve extend
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "bug54220", new Bug54220Servlet(false));
-        ctx.addServletMapping("/", "bug54220");
+        ctx.addServletMappingDecoded("/", "bug54220");
 
         tomcat.start();
 
@@ -97,7 +97,7 @@ public class TestErrorReportValve extend
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "bug54220", new Bug54220Servlet(true));
-        ctx.addServletMapping("/", "bug54220");
+        ctx.addServletMappingDecoded("/", "bug54220");
 
         tomcat.start();
 
@@ -141,7 +141,7 @@ public class TestErrorReportValve extend
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "bug54536", new Bug54536Servlet());
-        ctx.addServletMapping("/", "bug54536");
+        ctx.addServletMappingDecoded("/", "bug54536");
 
         tomcat.start();
 
@@ -180,7 +180,7 @@ public class TestErrorReportValve extend
         Wrapper wrapper =
             Tomcat.addServlet(ctx, "bug56042Servlet", bug56042Servlet);
         wrapper.setAsyncSupported(true);
-        ctx.addServletMapping("/bug56042Servlet", "bug56042Servlet");
+        ctx.addServletMappingDecoded("/bug56042Servlet", "bug56042Servlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/coyote/ajp/TestAbstractAjpProcessor.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/coyote/ajp/TestAbstractAjpProcessor.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/coyote/ajp/TestAbstractAjpProcessor.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/coyote/ajp/TestAbstractAjpProcessor.java Tue Aug 30 20:08:50 2016
@@ -84,7 +84,7 @@ public class TestAbstractAjpProcessor ex
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "snoop", new SnoopServlet());
-        ctx.addServletMapping("/", "snoop");
+        ctx.addServletMappingDecoded("/", "snoop");
 
         SimpleAjpClient ajpClient = new SimpleAjpClient(ajpPacketSize);
 
@@ -499,7 +499,7 @@ public class TestAbstractAjpProcessor ex
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "helloWorld", new HelloWorldServlet());
-        ctx.addServletMapping("/", "helloWorld");
+        ctx.addServletMappingDecoded("/", "helloWorld");
 
         SimpleAjpClient ajpClient = new SimpleAjpClient();
 
@@ -559,7 +559,7 @@ public class TestAbstractAjpProcessor ex
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "helloWorld", new HelloWorldServlet());
-        ctx.addServletMapping("/", "helloWorld");
+        ctx.addServletMappingDecoded("/", "helloWorld");
 
         SimpleAjpClient ajpClient = new SimpleAjpClient();
 
@@ -664,7 +664,7 @@ public class TestAbstractAjpProcessor ex
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "bug55453", new Tester304WithBodyServlet());
-        ctx.addServletMapping("/", "bug55453");
+        ctx.addServletMappingDecoded("/", "bug55453");
 
         tomcat.start();
 
@@ -721,7 +721,7 @@ public class TestAbstractAjpProcessor ex
 
         ReadBodyServlet servlet = new ReadBodyServlet(callAvailable);
         Tomcat.addServlet(ctx, "ReadBody", servlet);
-        ctx.addServletMapping("/", "ReadBody");
+        ctx.addServletMappingDecoded("/", "ReadBody");
 
         tomcat.start();
 
@@ -778,7 +778,7 @@ public class TestAbstractAjpProcessor ex
 
         FixedResponseSizeServlet servlet = new FixedResponseSizeServlet(15000, 16000);
         Tomcat.addServlet(ctx, "FixedResponseSizeServlet", servlet);
-        ctx.addServletMapping("/", "FixedResponseSizeServlet");
+        ctx.addServletMappingDecoded("/", "FixedResponseSizeServlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java Tue Aug 30 20:08:50 2016
@@ -79,7 +79,7 @@ public class TestAbstractHttp11Processor
         // Add protected servlet
         Tomcat.addServlet(ctx, "ChunkedResponseWithErrorServlet",
                 new ResponseWithErrorServlet(true));
-        ctx.addServletMapping("/*", "ChunkedResponseWithErrorServlet");
+        ctx.addServletMappingDecoded("/*", "ChunkedResponseWithErrorServlet");
 
         tomcat.start();
 
@@ -333,7 +333,7 @@ public class TestAbstractHttp11Processor
 
         // Add protected servlet
         Tomcat.addServlet(ctx, "TesterServlet", new TesterServlet());
-        ctx.addServletMapping("/foo", "TesterServlet");
+        ctx.addServletMappingDecoded("/foo", "TesterServlet");
 
         tomcat.start();
 
@@ -393,7 +393,7 @@ public class TestAbstractHttp11Processor
 
         Tomcat.addServlet(ctx, "NoContentLengthFlushingServlet",
                 new NoContentLengthFlushingServlet());
-        ctx.addServletMapping("/test", "NoContentLengthFlushingServlet");
+        ctx.addServletMappingDecoded("/test", "NoContentLengthFlushingServlet");
 
         tomcat.start();
 
@@ -420,7 +420,7 @@ public class TestAbstractHttp11Processor
 
         Tomcat.addServlet(ctx, "NoContentLengthConnectionCloseFlushingServlet",
                 new NoContentLengthConnectionCloseFlushingServlet());
-        ctx.addServletMapping("/test",
+        ctx.addServletMappingDecoded("/test",
                 "NoContentLengthConnectionCloseFlushingServlet");
 
         tomcat.start();
@@ -460,7 +460,7 @@ public class TestAbstractHttp11Processor
 
         Tomcat.addServlet(ctx, "LargeHeaderServlet",
                 new LargeHeaderServlet(flush));
-        ctx.addServletMapping("/test", "LargeHeaderServlet");
+        ctx.addServletMappingDecoded("/test", "LargeHeaderServlet");
 
         tomcat.start();
 
@@ -495,7 +495,7 @@ public class TestAbstractHttp11Processor
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "async", new Bug55772Servlet());
-        ctx.addServletMapping("/*", "async");
+        ctx.addServletMappingDecoded("/*", "async");
 
         tomcat.start();
 
@@ -568,7 +568,7 @@ public class TestAbstractHttp11Processor
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "echo", new EchoBodyServlet());
-        ctx.addServletMapping("/echo", "echo");
+        ctx.addServletMappingDecoded("/echo", "echo");
 
         SecurityCollection collection = new SecurityCollection("All", "");
         collection.addPattern("/*");
@@ -723,7 +723,7 @@ public class TestAbstractHttp11Processor
         Context root = tomcat.addContext("", null);
         Wrapper w = Tomcat.addServlet(root, "Bug57621", new Bug57621Servlet());
         w.setAsyncSupported(true);
-        root.addServletMapping("/test", "Bug57621");
+        root.addServletMappingDecoded("/test", "Bug57621");
 
         tomcat.start();
 
@@ -819,7 +819,7 @@ public class TestAbstractHttp11Processor
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "Bug59310", new Bug59310Servlet());
-        ctx.addServletMapping("/test", "Bug59310");
+        ctx.addServletMappingDecoded("/test", "Bug59310");
 
         tomcat.start();
 
@@ -866,7 +866,7 @@ public class TestAbstractHttp11Processor
         SempahoreServlet servlet = new SempahoreServlet();
         Wrapper w = Tomcat.addServlet(ctx, "Test", servlet);
         w.setAsyncSupported(true);
-        ctx.addServletMapping("/test", "Test");
+        ctx.addServletMappingDecoded("/test", "Test");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestInternalInputBuffer.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestInternalInputBuffer.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestInternalInputBuffer.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/TestInternalInputBuffer.java Tue Aug 30 20:08:50 2016
@@ -65,7 +65,7 @@ public class TestInternalInputBuffer ext
 
             Context root = tomcat.addContext("", TEMP_DIR);
             Tomcat.addServlet(root, "Bug48839", new Bug48839Servlet());
-            root.addServletMapping("/test", "Bug48839");
+            root.addServletMappingDecoded("/test", "Bug48839");
 
             try {
                 tomcat.start();
@@ -240,7 +240,7 @@ public class TestInternalInputBuffer ext
             Context root = tomcat.addContext("", TEMP_DIR);
             Tomcat.addServlet(root, "Bug51557",
                     new Bug51557Servlet(headerName));
-            root.addServletMapping("/test", "Bug51557");
+            root.addServletMappingDecoded("/test", "Bug51557");
 
             try {
                 tomcat.start();
@@ -372,7 +372,7 @@ public class TestInternalInputBuffer ext
 
             Context root = tomcat.addContext("", TEMP_DIR);
             Tomcat.addServlet(root, "test", new TesterServlet());
-            root.addServletMapping("/test", "test");
+            root.addServletMappingDecoded("/test", "test");
 
             try {
                 tomcat.start();
@@ -440,7 +440,7 @@ public class TestInternalInputBuffer ext
 
             Context root = tomcat.addContext("", TEMP_DIR);
             Tomcat.addServlet(root, "Bug54947", new TesterServlet());
-            root.addServletMapping("/test", "Bug54947");
+            root.addServletMappingDecoded("/test", "Bug54947");
 
             try {
                 tomcat.start();
@@ -507,7 +507,7 @@ public class TestInternalInputBuffer ext
 
             Context root = tomcat.addContext("", TEMP_DIR);
             Tomcat.addServlet(root, "Bug59089", new TesterServlet());
-            root.addServletMapping("/test", "Bug59089");
+            root.addServletMappingDecoded("/test", "Bug59089");
 
             try {
                 tomcat.start();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java Tue Aug 30 20:08:50 2016
@@ -109,7 +109,7 @@ public class TestChunkedInputFilter exte
 
         EchoHeaderServlet servlet = new EchoHeaderServlet(expectPass);
         Tomcat.addServlet(ctx, "servlet", servlet);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         tomcat.start();
 
@@ -171,7 +171,7 @@ public class TestChunkedInputFilter exte
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "servlet", new EchoHeaderServlet(false));
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         // Limit the size of the trailing header
         tomcat.getConnector().setProperty("maxTrailerSize", "10");
@@ -234,7 +234,7 @@ public class TestChunkedInputFilter exte
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "servlet", new EchoHeaderServlet(ok));
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         tomcat.start();
 
@@ -282,7 +282,7 @@ public class TestChunkedInputFilter exte
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "servlet", new EchoHeaderServlet(true));
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         tomcat.start();
 
@@ -382,7 +382,7 @@ public class TestChunkedInputFilter exte
 
         BodyReadServlet servlet = new BodyReadServlet(expectPass, readLimit);
         Tomcat.addServlet(ctx, "servlet", servlet);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/upgrade/TestUpgrade.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/upgrade/TestUpgrade.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/upgrade/TestUpgrade.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/coyote/http11/upgrade/TestUpgrade.java Tue Aug 30 20:08:50 2016
@@ -161,7 +161,7 @@ public class TestUpgrade extends TomcatB
 
         UpgradeServlet servlet = new UpgradeServlet(upgradeHandlerClass);
         Tomcat.addServlet(ctx, "servlet", servlet);
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/jasper/runtime/TestPageContextImpl.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/jasper/runtime/TestPageContextImpl.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/jasper/runtime/TestPageContextImpl.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/jasper/runtime/TestPageContextImpl.java Tue Aug 30 20:08:50 2016
@@ -65,7 +65,7 @@ public class TestPageContextImpl extends
 
         // Add the Servlet
         Tomcat.addServlet(ctx, "bug56010", new Bug56010());
-        ctx.addServletMapping("/bug56010", "bug56010");
+        ctx.addServletMappingDecoded("/bug56010", "bug56010");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/jasper/servlet/TestJspServlet.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/jasper/servlet/TestJspServlet.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/jasper/servlet/TestJspServlet.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/jasper/servlet/TestJspServlet.java Tue Aug 30 20:08:50 2016
@@ -46,7 +46,7 @@ public class TestJspServlet  extends Tom
 
         // Create a servlet that always throws an exception for a PUT request
         Tomcat.addServlet(context, "Bug56568Servlet", new Bug56568aServlet());
-        context.addServletMapping("/bug56568", "Bug56568Servlet");
+        context.addServletMappingDecoded("/bug56568", "Bug56568Servlet");
 
         // Configure a JSP page to handle the 500 error response
         // The JSP page will see the same method as the original request (PUT)

Modified: tomcat/tc8.0.x/trunk/test/org/apache/naming/resources/TestNamingContext.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/naming/resources/TestNamingContext.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/naming/resources/TestNamingContext.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/naming/resources/TestNamingContext.java Tue Aug 30 20:08:50 2016
@@ -74,7 +74,7 @@ public class TestNamingContext extends T
         // Map the test Servlet
         Bug49994Servlet bug49994Servlet = new Bug49994Servlet();
         Tomcat.addServlet(ctx, "bug49994Servlet", bug49994Servlet);
-        ctx.addServletMapping("/", "bug49994Servlet");
+        ctx.addServletMappingDecoded("/", "bug49994Servlet");
 
         tomcat.start();
 
@@ -134,7 +134,7 @@ public class TestNamingContext extends T
         // Map the test Servlet
         Bug23950Servlet bug23950Servlet = new Bug23950Servlet();
         Tomcat.addServlet(ctx, "bug23950Servlet", bug23950Servlet);
-        ctx.addServletMapping("/", "bug23950Servlet");
+        ctx.addServletMappingDecoded("/", "bug23950Servlet");
 
         tomcat.start();
 
@@ -186,7 +186,7 @@ public class TestNamingContext extends T
         // Map the test Servlet
         Bug50351Servlet bug50351Servlet = new Bug50351Servlet();
         Tomcat.addServlet(ctx, "bug50351Servlet", bug50351Servlet);
-        ctx.addServletMapping("/", "bug50351Servlet");
+        ctx.addServletMappingDecoded("/", "bug50351Servlet");
 
         tomcat.start();
 
@@ -239,7 +239,7 @@ public class TestNamingContext extends T
         // Map the test Servlet
         Bug51744Servlet bug51744Servlet = new Bug51744Servlet();
         Tomcat.addServlet(ctx, "bug51744Servlet", bug51744Servlet);
-        ctx.addServletMapping("/", "bug51744Servlet");
+        ctx.addServletMappingDecoded("/", "bug51744Servlet");
 
         tomcat.start();
 
@@ -302,7 +302,7 @@ public class TestNamingContext extends T
         // Map the test Servlet
         Bug52830Servlet bug52830Servlet = new Bug52830Servlet();
         Tomcat.addServlet(ctx, "bug52830Servlet", bug52830Servlet);
-        ctx.addServletMapping("/", "bug52830Servlet");
+        ctx.addServletMappingDecoded("/", "bug52830Servlet");
 
         tomcat.start();
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/unittest/TesterContext.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/unittest/TesterContext.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/unittest/TesterContext.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/unittest/TesterContext.java Tue Aug 30 20:08:50 2016
@@ -760,15 +760,28 @@ public class TesterContext implements Co
     }
 
     @Override
+    @Deprecated
     public void addServletMapping(String pattern, String name) {
         // NO-OP
     }
 
     @Override
+    @Deprecated
     public void addServletMapping(String pattern, String name,
             boolean jspWildcard) {
         // NO-OP
     }
+
+    @Override
+    public void addServletMappingDecoded(String pattern, String name) {
+        // NO-OP
+    }
+
+    @Override
+    public void addServletMappingDecoded(String pattern, String name,
+            boolean jspWildcard) {
+        // NO-OP
+    }
 
     @Override
     public void addWatchedResource(String name) {

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestJspPropertyGroupDescriptorImpl.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestJspPropertyGroupDescriptorImpl.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestJspPropertyGroupDescriptorImpl.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestJspPropertyGroupDescriptorImpl.java Tue Aug 30 20:08:50 2016
@@ -42,7 +42,7 @@ public class TestJspPropertyGroupDescrip
     @Test
     public void testUrlPatternsAreIsolated() {
         JspPropertyGroup jpg = new JspPropertyGroup();
-        jpg.addUrlPattern("pattern");
+        jpg.addUrlPatternDecoded("pattern");
         JspPropertyGroupDescriptorImpl descriptor = new JspPropertyGroupDescriptorImpl(jpg);
         descriptor.getUrlPatterns().clear();
         Assert.assertEquals(1, descriptor.getUrlPatterns().size());

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestSecurityConstraint.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestSecurityConstraint.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestSecurityConstraint.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestSecurityConstraint.java Tue Aug 30 20:08:50 2016
@@ -55,7 +55,7 @@ public class TestSecurityConstraint {
         GET_ONLY.addAuthRole(ROLE1);
         SecurityCollection scGetOnly = new SecurityCollection();
         scGetOnly.addMethod("GET");
-        scGetOnly.addPattern(URL_PATTERN);
+        scGetOnly.addPatternDecoded(URL_PATTERN);
         scGetOnly.setName("GET-ONLY");
         GET_ONLY.addCollection(scGetOnly);
 
@@ -63,7 +63,7 @@ public class TestSecurityConstraint {
         POST_ONLY.addAuthRole(ROLE1);
         SecurityCollection scPostOnly = new SecurityCollection();
         scPostOnly.addMethod("POST");
-        scPostOnly.addPattern(URL_PATTERN);
+        scPostOnly.addPatternDecoded(URL_PATTERN);
         scPostOnly.setName("POST_ONLY");
         POST_ONLY.addCollection(scPostOnly);
 
@@ -71,7 +71,7 @@ public class TestSecurityConstraint {
         GET_OMIT.addAuthRole(ROLE1);
         SecurityCollection scGetOmit = new SecurityCollection();
         scGetOmit.addOmittedMethod("GET");
-        scGetOmit.addPattern(URL_PATTERN);
+        scGetOmit.addPatternDecoded(URL_PATTERN);
         scGetOmit.setName("GET_OMIT");
         GET_OMIT.addCollection(scGetOmit);
 
@@ -79,7 +79,7 @@ public class TestSecurityConstraint {
         POST_OMIT.addAuthRole(ROLE1);
         SecurityCollection scPostOmit = new SecurityCollection();
         scPostOmit.addOmittedMethod("POST");
-        scPostOmit.addPattern(URL_PATTERN);
+        scPostOmit.addPatternDecoded(URL_PATTERN);
         scPostOmit.setName("POST_OMIT");
         POST_OMIT.addCollection(scPostOmit);
     }

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestWebXml.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestWebXml.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestWebXml.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/descriptor/web/TestWebXml.java Tue Aug 30 20:08:50 2016
@@ -230,7 +230,7 @@ public class TestWebXml {
 
         FilterMap filterMap = new FilterMap();
         filterMap.setFilterName("Dummy");
-        filterMap.addURLPattern("/*");
+        filterMap.addURLPatternDecoded("/*");
         webXmlDefaultFragment.addFilterMapping(filterMap);
 
         // Listeners were added in 2.3 so should be excluded in 2.2
@@ -275,7 +275,7 @@ public class TestWebXml {
         sc.setDisplayName("dummy");
         SecurityCollection collection = new SecurityCollection();
         collection.setName("dummy");
-        collection.addPattern("/*");
+        collection.addPatternDecoded("/*");
         collection.addMethod("DELETE");
         sc.addCollection(collection);
         webXmlDefaultFragment.addSecurityConstraint(sc);

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/CookiesBaseTest.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/CookiesBaseTest.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/CookiesBaseTest.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/CookiesBaseTest.java Tue Aug 30 20:08:50 2016
@@ -72,21 +72,21 @@ public abstract class CookiesBaseTest ex
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "invalid", new CookieServlet("na;me", "value"));
-        ctx.addServletMapping("/invalid", "invalid");
+        ctx.addServletMappingDecoded("/invalid", "invalid");
         Tomcat.addServlet(ctx, "null", new CookieServlet(null, "value"));
-        ctx.addServletMapping("/null", "null");
+        ctx.addServletMappingDecoded("/null", "null");
         Tomcat.addServlet(ctx, "blank", new CookieServlet("", "value"));
-        ctx.addServletMapping("/blank", "blank");
+        ctx.addServletMappingDecoded("/blank", "blank");
         Tomcat.addServlet(ctx, "invalidFwd",
                 new CookieServlet("na/me", "value"));
-        ctx.addServletMapping("/invalidFwd", "invalidFwd");
+        ctx.addServletMappingDecoded("/invalidFwd", "invalidFwd");
         Tomcat.addServlet(ctx, "invalidStrict",
                 new CookieServlet("na?me", "value"));
-        ctx.addServletMapping("/invalidStrict", "invalidStrict");
+        ctx.addServletMappingDecoded("/invalidStrict", "invalidStrict");
         Tomcat.addServlet(ctx, "valid", new CookieServlet("name", "value"));
-        ctx.addServletMapping("/valid", "valid");
+        ctx.addServletMappingDecoded("/valid", "valid");
         Tomcat.addServlet(ctx, "switch", new CookieServlet("name", "val?ue"));
-        ctx.addServletMapping("/switch", "switch");
+        ctx.addServletMappingDecoded("/switch", "switch");
 
     }
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestBug49158.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestBug49158.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestBug49158.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestBug49158.java Tue Aug 30 20:08:50 2016
@@ -64,7 +64,7 @@ public class TestBug49158 extends Cookie
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, path, new TestBug49158Servlet());
-        ctx.addServletMapping("/"+path, path);
+        ctx.addServletMappingDecoded("/"+path, path);
     }
 
     public static class TestBug49158Servlet extends HttpServlet {

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieParsing.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieParsing.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieParsing.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieParsing.java Tue Aug 30 20:08:50 2016
@@ -255,7 +255,7 @@ public class TestCookieParsing extends T
             } else {
                 Tomcat.addServlet(root, "Cookies", new EchoCookies());
             }
-            root.addServletMapping("/test", "Cookies");
+            root.addServletMappingDecoded("/test", "Cookies");
 
             tomcat.start();
             // Open connection

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieProcessorGenerationHttp.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieProcessorGenerationHttp.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieProcessorGenerationHttp.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestCookieProcessorGenerationHttp.java Tue Aug 30 20:08:50 2016
@@ -45,7 +45,7 @@ public class TestCookieProcessorGenerati
         Context ctx = tomcat.addContext("", null);
         ctx.setCookieProcessor(new Rfc6265CookieProcessor());
         Tomcat.addServlet(ctx, "test", new CookieServlet("\u0120"));
-        ctx.addServletMapping("/test", "test");
+        ctx.addServletMappingDecoded("/test", "test");
         tomcat.start();
 
         Map<String,List<String>> headers = new HashMap<>();

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestMimeHeadersIntegration.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestMimeHeadersIntegration.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestMimeHeadersIntegration.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestMimeHeadersIntegration.java Tue Aug 30 20:08:50 2016
@@ -56,7 +56,7 @@ public class TestMimeHeadersIntegration
                 res.getWriter().write("OK");
             }
         });
-        ctx.addServletMapping("/", "servlet");
+        ctx.addServletMappingDecoded("/", "servlet");
 
         alv = new HeaderCountLogValve();
         tomcat.getHost().getPipeline().addValve(alv);

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TestSsl.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TestSsl.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TestSsl.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TestSsl.java Tue Aug 30 20:08:50 2016
@@ -101,7 +101,7 @@ public class TestSsl extends TomcatBaseT
         Wrapper w =
             Tomcat.addServlet(root, "tester", new TesterServlet());
         w.setAsyncSupported(true);
-        root.addServletMapping("/", "tester");
+        root.addServletMappingDecoded("/", "tester");
 
         TesterSupport.initSsl(tomcat);
 

Modified: tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TesterSupport.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TesterSupport.java?rev=1758456&r1=1758455&r2=1758456&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TesterSupport.java (original)
+++ tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/net/TesterSupport.java Tue Aug 30 20:08:50 2016
@@ -160,12 +160,12 @@ public final class TesterSupport {
         Context ctx = tomcat.addContext("", null);
 
         Tomcat.addServlet(ctx, "simple", new SimpleServlet());
-        ctx.addServletMapping("/unprotected", "simple");
-        ctx.addServletMapping("/protected", "simple");
+        ctx.addServletMappingDecoded("/unprotected", "simple");
+        ctx.addServletMappingDecoded("/protected", "simple");
 
         // Security constraints
         SecurityCollection collection = new SecurityCollection();
-        collection.addPattern("/protected");
+        collection.addPatternDecoded("/protected");
         SecurityConstraint sc = new SecurityConstraint();
         sc.addAuthRole(ROLE);
         sc.addCollection(collection);




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