blob: f835623837043eca98c542d5f81e47c84881d879 [file] [log] [blame]
package org.eclipse.jetty.exssl;
import java.io.File;
import java.lang.reflect.Constructor;
import org.eclipse.jetty.client.HttpClient;
import org.eclipse.jetty.client.SslContentExchangeTest;
import org.eclipse.jetty.io.SslContextFactory;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.HandlerCollection;
import org.eclipse.jetty.server.ssl.SslConnector;
import org.eclipse.jetty.servlet.DefaultServlet;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.toolchain.test.MavenTestingUtils;
import org.junit.Ignore;
public abstract class SslValidationTestBase extends SslContentExchangeTest
{
protected static Class<? extends SslConnector> __klass;
protected static int __konnector;
@Override
protected void configureServer(Server server)
throws Exception
{
setProtocol("https");
// certificate is valid until Jan 1, 2050
String keypath = MavenTestingUtils.getTestResourceFile("jetty-valid.keystore").getAbsolutePath();
String trustpath = new File(System.getProperty("java.home"),"./lib/security/cacerts").getAbsolutePath();
String crlpath = MavenTestingUtils.getTestResourceFile("crlfile.pem").getAbsolutePath();
SslContextFactory srvFactory = new SslContextFactory();
srvFactory.setValidateCerts(true);
srvFactory.setKeystore(keypath);
srvFactory.setKeystorePassword("webtide");
srvFactory.setKeyManagerPassword("webtide");
srvFactory.setTruststore(trustpath);
srvFactory.setTruststorePassword("changeit");
srvFactory.setCrlPath(crlpath);
Constructor<? extends SslConnector> constructor = __klass.getConstructor(SslContextFactory.class);
SslConnector connector = constructor.newInstance(srvFactory);
server.addConnector(connector);
Handler handler = new TestHandler(getBasePath());
ServletContextHandler root = new ServletContextHandler();
root.setContextPath("/");
root.setResourceBase(getBasePath());
ServletHolder servletHolder = new ServletHolder( new DefaultServlet() );
servletHolder.setInitParameter( "gzip", "true" );
root.addServlet( servletHolder, "/*" );
HandlerCollection handlers = new HandlerCollection();
handlers.setHandlers(new Handler[]{handler, root});
server.setHandler( handlers );
}
// @Override
// protected void configureClient(HttpClient client)
// throws Exception
// {
// String trustpath = new File(System.getProperty("java.home"),"./lib/security/cacerts").getAbsolutePath();
// client.setTrustStoreLocation(trustpath);
// client.setTrustStorePassword("changeit");
// client.setConnectorType(__konnector);
// }
}