437395 - Start / Properties in template sections should be default applied for enabled modules

+ Adding test cases for jsp-impl usecase that triggered this bug.
This commit is contained in:
Joakim Erdfelt 2014-06-17 10:41:32 -07:00
parent 5fa564efa8
commit 4ba530b5ad
23 changed files with 106 additions and 8 deletions

View File

@ -535,7 +535,7 @@ public class Modules implements Iterable<Module>
StartLog.warn("** Unable to continue, required dependency missing. [%s]",missing); StartLog.warn("** Unable to continue, required dependency missing. [%s]",missing);
StartLog.warn("** As configured, Jetty is unable to start due to a missing enabled module dependency."); StartLog.warn("** As configured, Jetty is unable to start due to a missing enabled module dependency.");
StartLog.warn("** This may be due to a transitive dependency akin to spdy on npn, which resolves based on the JDK in use."); StartLog.warn("** This may be due to a transitive dependency akin to spdy on npn, which resolves based on the JDK in use.");
return Collections.emptyList(); throw new UsageException(UsageException.ERR_BAD_ARG, "Missing referenced dependency: " + missing);
} }
} }
} }

View File

@ -19,7 +19,6 @@
package org.eclipse.jetty.start; package org.eclipse.jetty.start;
import static org.hamcrest.Matchers.contains; import static org.hamcrest.Matchers.contains;
import static org.hamcrest.Matchers.is;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;

View File

@ -73,6 +73,30 @@ public class TestUseCases
assertUseCase("home","base.with.include.jetty.dirs","assert-include-jetty-dir-logging.txt"); assertUseCase("home","base.with.include.jetty.dirs","assert-include-jetty-dir-logging.txt");
} }
@Test
public void testWithJspDefault() throws Exception
{
assertUseCase("home","base.with.jsp.default","assert-jsp-apache.txt");
}
@Test
public void testWithJspApache() throws Exception
{
assertUseCase("home","base.with.jsp.apache","assert-jsp-apache.txt");
}
@Test
public void testWithJspGlassfish() throws Exception
{
assertUseCase("home","base.with.jsp.glassfish","assert-jsp-glassfish.txt");
}
@Test
public void testWithJspGlassfishCmdLine() throws Exception
{
assertUseCase("home","base.with.jsp.default","assert-jsp-glassfish.txt","jsp-impl=glassfish");
}
@Test @Test
public void testWithMissingNpnVersion() throws Exception public void testWithMissingNpnVersion() throws Exception
{ {
@ -85,12 +109,6 @@ public class TestUseCases
assertUseCase("home","base.enable.spdy","assert-enable-spdy.txt","java.version=1.7.0_21"); assertUseCase("home","base.enable.spdy","assert-enable-spdy.txt","java.version=1.7.0_21");
} }
@Test
public void testWithSpdyBadNpnVersion() throws Exception
{
assertUseCase("home","base.enable.spdy.bad.npn.version","assert-enable-spdy-bad-npn-version.txt","java.version=1.7.0_01");
}
@Test @Test
public void testWithDatabase() throws Exception public void testWithDatabase() throws Exception
{ {

View File

@ -0,0 +1,26 @@
# The XMLs we expect (order is important)
XML|${jetty.home}/etc/jetty.xml
XML|${jetty.home}/etc/jetty-http.xml
# The LIBs we expect (order is irrelevant)
LIB|${jetty.home}/lib/jetty-continuation-TEST.jar
LIB|${jetty.home}/lib/jetty-http-TEST.jar
LIB|${jetty.home}/lib/jetty-io-TEST.jar
LIB|${jetty.home}/lib/jetty-schemas-3.1.jar
LIB|${jetty.home}/lib/jetty-server-TEST.jar
LIB|${jetty.home}/lib/jetty-servlet-TEST.jar
LIB|${jetty.home}/lib/jetty-util-TEST.jar
LIB|${jetty.home}/lib/jetty-xml-TEST.jar
LIB|${jetty.home}/lib/servlet-api-3.1.jar
LIB|${jetty.home}/lib/apache-jsp/javax.servlet.jsp.javax.servlet.jsp-api-TEST.jar
LIB|${jetty.home}/lib/apache-jsp/org.eclipse.jetty.apache-jsp-TEST.jar
LIB|${jetty.home}/lib/apache-jsp/org.eclipse.jetty.orbit.org.eclipse.jdt.core-TEST.jar
LIB|${jetty.home}/lib/apache-jsp/org.mortbay.jasper.apache-el-TEST.jar
LIB|${jetty.home}/lib/apache-jsp/org.mortbay.jasper.apache-jsp-TEST.jar
# The Properties we expect (order is irrelevant)
PROP|jetty.port=9090
PROP|jsp-impl=apache
# Files / Directories to create
# FILE|lib/

View File

@ -0,0 +1,28 @@
# The XMLs we expect (order is important)
XML|${jetty.home}/etc/jetty.xml
XML|${jetty.home}/etc/jetty-http.xml
# The LIBs we expect (order is irrelevant)
LIB|${jetty.home}/lib/jetty-continuation-TEST.jar
LIB|${jetty.home}/lib/jetty-http-TEST.jar
LIB|${jetty.home}/lib/jetty-io-TEST.jar
LIB|${jetty.home}/lib/jetty-schemas-3.1.jar
LIB|${jetty.home}/lib/jetty-server-TEST.jar
LIB|${jetty.home}/lib/jetty-servlet-TEST.jar
LIB|${jetty.home}/lib/jetty-util-TEST.jar
LIB|${jetty.home}/lib/jetty-xml-TEST.jar
LIB|${jetty.home}/lib/servlet-api-3.1.jar
LIB|${jetty.home}/lib/jsp/javax.el-TEST.jar
LIB|${jetty.home}/lib/jsp/javax.servlet.jsp.jstl-TEST.jar
LIB|${jetty.home}/lib/jsp/javax.servlet.jsp-api-TEST.jar
LIB|${jetty.home}/lib/jsp/javax.servlet.jsp-TEST.jar
LIB|${jetty.home}/lib/jsp/jetty-jsp-jdt-TEST.jar
LIB|${jetty.home}/lib/jsp/org.eclipse.jdt.core-TEST.jar
LIB|${jetty.home}/lib/jsp/org.eclipse.jetty.orbit.javax.servlet.jsp.jstl-TEST.jar
# The Properties we expect (order is irrelevant)
PROP|jetty.port=9090
PROP|jsp-impl=glassfish
# Files / Directories to create
# FILE|lib/

View File

@ -0,0 +1,7 @@
--module=server
--module=http
--module=jsp
jsp-impl=apache
jetty.port=9090

View File

@ -0,0 +1,7 @@
--module=server
--module=http
--module=jsp
jsp-impl=bogus
jetty.port=9090

View File

@ -0,0 +1,6 @@
--module=server
--module=http
--module=jsp
jetty.port=9090

View File

@ -0,0 +1,7 @@
--module=server
--module=http
--module=jsp
jsp-impl=glassfish
jetty.port=9090