From 0b9f6c8d45a5426dac29ff9c832b057b8e0e7ea3 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 11 May 2017 16:13:39 +1000 Subject: [PATCH] use jetty 9.3.19 for testing -> really faster to start Signed-off-by: olivier lamy --- pom.xml | 2 +- .../redback-rest-services/pom.xml | 33 +++--------- .../services/AbstractRestServicesTest.java | 54 +++++++++++-------- 3 files changed, 41 insertions(+), 48 deletions(-) diff --git a/pom.xml b/pom.xml index b3948655..de751eb7 100644 --- a/pom.xml +++ b/pom.xml @@ -73,7 +73,7 @@ 4.2.1.RELEASE 1.7.12 - 2.3 + 2.8.2 UTF-8 true diff --git a/redback-integrations/redback-rest/redback-rest-services/pom.xml b/redback-integrations/redback-rest/redback-rest-services/pom.xml index 2de4c002..bfd1770c 100644 --- a/redback-integrations/redback-rest/redback-rest-services/pom.xml +++ b/redback-integrations/redback-rest/redback-rest-services/pom.xml @@ -33,6 +33,7 @@ 7.0.57 + 9.3.19.v20170502 1000000 @@ -138,34 +139,14 @@ - org.apache.tomcat.embed - tomcat-embed-core - ${tomcatVersion} - test + org.eclipse.jetty + jetty-server + ${jetty.version} - org.apache.tomcat - tomcat-juli - ${tomcatVersion} - test - - - org.apache.tomcat.embed - tomcat-embed-logging-juli - ${tomcatVersion} - test - - - org.apache.tomcat - tomcat-servlet-api - ${tomcatVersion} - provided - - - org.apache.tomcat - tomcat-jsp-api - ${tomcatVersion} - provided + org.eclipse.jetty + jetty-servlet + ${jetty.version} diff --git a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java index 4b565a2c..a6c34ef5 100644 --- a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java +++ b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java @@ -27,14 +27,18 @@ import org.apache.archiva.redback.rest.api.services.LoginService; import org.apache.archiva.redback.rest.api.services.RoleManagementService; import org.apache.archiva.redback.rest.api.services.UserService; -import org.apache.catalina.Context; -import org.apache.catalina.deploy.ApplicationParameter; -import org.apache.catalina.startup.Tomcat; import org.apache.commons.lang.StringUtils; import org.apache.cxf.common.util.Base64Utility; import org.apache.cxf.jaxrs.client.JAXRSClientFactory; import org.apache.cxf.jaxrs.client.WebClient; import org.apache.cxf.transport.servlet.CXFServlet; +import org.eclipse.jetty.server.HttpConnectionFactory; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.ServerConnector; +import org.eclipse.jetty.server.session.SessionHandler; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHandler; +import org.eclipse.jetty.servlet.ServletHolder; import org.junit.After; import org.junit.Before; import org.junit.runner.RunWith; @@ -56,8 +60,8 @@ public abstract class AbstractRestServicesTest { protected Logger log = LoggerFactory.getLogger( getClass() ); - private Tomcat tomcat; - + Server server; + ServerConnector serverConnector; public int port; public String authorizationHeader = getAdminAuthzHeader(); @@ -98,17 +102,10 @@ protected String getRestServicesPath() public void startServer() throws Exception { - - SLF4JBridgeHandler.removeHandlersForRootLogger(); - - SLF4JBridgeHandler.install(); - - tomcat = new Tomcat(); - tomcat.setBaseDir( System.getProperty( "java.io.tmpdir" ) ); - tomcat.setPort( 0 ); - - Context context = tomcat.addContext( "", System.getProperty( "java.io.tmpdir" ) ); - + server = new Server(); + serverConnector = new ServerConnector( server, new HttpConnectionFactory()); + server.addConnector(serverConnector); + /* ApplicationParameter applicationParameter = new ApplicationParameter(); applicationParameter.setName( "contextConfigLocation" ); applicationParameter.setValue( getSpringConfigLocation() ); @@ -118,10 +115,25 @@ public void startServer() Tomcat.addServlet( context, "cxf", new CXFServlet() ); context.addServletMapping( "/" + getRestServicesPath() + "/*", "cxf" ); + */ + ServletHolder servletHolder = new ServletHolder( new CXFServlet() ); - tomcat.start(); + ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); + context.setSessionHandler( new SessionHandler( ) ); + context.setContextPath( "/" ); + context.addServlet( servletHolder, "/" + getRestServicesPath() + "/*" ); + context.setInitParameter( "contextConfigLocation", getSpringConfigLocation() ); + context.addEventListener(new ContextLoaderListener()); - this.port = tomcat.getConnector().getLocalPort(); + server.setHandler( context ); + server.start(); + + if (log.isDebugEnabled()) + { + log.debug( "jetty dump: {}", server.dump() ); + } + + this.port = serverConnector.getLocalPort(); log.info( "start server on port {}", this.port ); @@ -143,16 +155,16 @@ protected FakeCreateAdminService getFakeCreateAdminService() { return JAXRSClientFactory.create( "http://localhost:" + port + "/" + getRestServicesPath() + "/fakeCreateAdminService/", - FakeCreateAdminService.class, Collections.singletonList( new com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider() ) ); + FakeCreateAdminService.class, Collections.singletonList( new JacksonJaxbJsonProvider() ) ); } @After public void stopServer() throws Exception { - if ( this.tomcat != null ) + if ( this.server != null ) { - this.tomcat.stop(); + this.server.stop(); } }