From b77838d1005c45740968816c70088dff2ad655d3 Mon Sep 17 00:00:00 2001
From: rsanchez <rsanchez@curisit.net>
Date: Thu, 25 Sep 2014 16:41:34 +0000
Subject: [PATCH] #2021 fix - Added API services and some minor enhancements
---
securis/src/main/java/net/curisit/securis/MainApp.java | 43 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 43 insertions(+), 0 deletions(-)
diff --git a/securis/src/main/java/net/curisit/securis/MainApp.java b/securis/src/main/java/net/curisit/securis/MainApp.java
index affe104..96cadaa 100644
--- a/securis/src/main/java/net/curisit/securis/MainApp.java
+++ b/securis/src/main/java/net/curisit/securis/MainApp.java
@@ -1,6 +1,7 @@
package net.curisit.securis;
import java.net.URI;
+import java.security.KeyStore;
import java.util.Properties;
import javax.inject.Inject;
@@ -11,8 +12,14 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.eclipse.jetty.http.HttpVersion;
import org.eclipse.jetty.server.Handler;
+import org.eclipse.jetty.server.HttpConfiguration;
+import org.eclipse.jetty.server.HttpConnectionFactory;
+import org.eclipse.jetty.server.SecureRequestCustomizer;
import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.ServerConnector;
+import org.eclipse.jetty.server.SslConnectionFactory;
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
import org.eclipse.jetty.server.handler.ResourceHandler;
import org.eclipse.jetty.servlet.ErrorPageErrorHandler;
@@ -20,6 +27,8 @@
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.util.resource.Resource;
+import org.eclipse.jetty.util.ssl.SslContextFactory;
+import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.jboss.resteasy.plugins.guice.GuiceResteasyBootstrapServletContextListener;
import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
@@ -29,6 +38,7 @@
import com.google.inject.name.Names;
import com.google.inject.persist.PersistFilter;
import com.google.inject.persist.jpa.JpaPersistModule;
+import com.itextpdf.text.pdf.security.KeyStoreUtil;
public class MainApp {
@@ -63,6 +73,9 @@
private static void startServer(URI uri) throws Exception {
System.out.println("Starting jetty...");
+ QueuedThreadPool threadPool = new QueuedThreadPool();
+ threadPool.setMaxThreads(50);
+
server = new Server(9997);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/");
@@ -90,10 +103,40 @@
contexts.setHandlers(new Handler[] {
staticResources, context
});
+
+ HttpConfiguration http_config = new HttpConfiguration();
+ http_config.setSecureScheme("https");
+ http_config.setSecurePort(8443);
+ http_config.setOutputBufferSize(32768);
+ http_config.setSendServerVersion(true);
+ http_config.setSendDateHeader(false);
+
+
+ HttpConfiguration https_config = new HttpConfiguration(http_config);
+ https_config.addCustomizer(new SecureRequestCustomizer());
+
+ SslContextFactory sslContextFactory = new SslContextFactory();
+ sslContextFactory.setKeyStorePath("/Users/rob/.ssh/keys/securis.pkcs12");
+ sslContextFactory.setKeyStoreType("PKCS12");
+ sslContextFactory.setKeyStorePassword("curist3c");
+ //sslContextFactory.setCertAlias("1");
+// sslContextFactory.setKeyManagerPassword("curist3c");
+// sslContextFactory.setTrustStorePath("/Users/rob/.ssh/keys/keystore");
+// sslContextFactory.setTrustStorePassword("curist3c");
+ sslContextFactory.checkKeyStore();
+ sslContextFactory.setNeedClientAuth(false);
+ LOG.info("Protocol: {}", sslContextFactory.getProtocol());
+
+ ServerConnector sslConnector = new ServerConnector(server, new SslConnectionFactory(sslContextFactory,HttpVersion.HTTP_1_1.asString()), new HttpConnectionFactory(https_config));
+ sslConnector.setPort(8443);
+ sslConnector.setHost("securis.curistec.com");
+ server.addConnector( sslConnector );
server.setHandler(context);
+ server.setStopAtShutdown(true);
server.start();
server.join();
+
LOG.info("Started server in: http://127.0.0.1:9997/");
}
--
Gitblit v1.3.2