@@ -, +, @@ getRessourceOnlyServlets --- java/org/apache/catalina/core/StandardContext.java | 2 ++ test/org/apache/catalina/core/TestStandardContext.java | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) --- a/java/org/apache/catalina/core/StandardContext.java +++ a/java/org/apache/catalina/core/StandardContext.java @@ -920,6 +920,8 @@ public class StandardContext extends ContainerBase for (String servletName : resourceOnlyServlets) { if (!first) { result.append(','); + } else { + first = false; } result.append(servletName); } --- a/test/org/apache/catalina/core/TestStandardContext.java +++ a/test/org/apache/catalina/core/TestStandardContext.java @@ -19,6 +19,7 @@ package org.apache.catalina.core; import java.io.File; import java.io.IOException; import java.io.PrintWriter; +import java.util.Arrays; import java.util.HashSet; import java.util.Set; @@ -48,6 +49,7 @@ import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import org.hamcrest.CoreMatchers; import org.junit.Assert; import org.junit.Test; @@ -945,4 +947,19 @@ public class TestStandardContext extends TomcatBaseTest { Assert.assertNull(realPath); } + + @Test + public void testBug56903() { + // Set up a container + Tomcat tomcat = getTomcatInstance(); + + File docBase = new File(System.getProperty("java.io.tmpdir")); + Context context = tomcat.addContext("", + docBase.getAbsolutePath()); + + context.setResourceOnlyServlets("a,b,c"); + Assert.assertThat( + Arrays.asList(context.getResourceOnlyServlets().split(",")), + CoreMatchers.hasItems("a", "b", "c")); + } } --