X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FLauncher.java;h=1d9716541a7eac7ebc532bf7757b7836001bb93e;hb=dd1ac40aa3d48cd24b9f0f0ec23a41fb5ef7c449;hp=6918074774d0d696c177224f06f511c4a1647392;hpb=f773028d5189066962d5528faf170e5d7d51fbc8;p=gigi.git diff --git a/src/org/cacert/gigi/Launcher.java b/src/org/cacert/gigi/Launcher.java index 69180747..1d971654 100644 --- a/src/org/cacert/gigi/Launcher.java +++ b/src/org/cacert/gigi/Launcher.java @@ -14,12 +14,16 @@ import javax.net.ssl.TrustManagerFactory; import org.cacert.gigi.natives.SetUID; import org.eclipse.jetty.server.Connector; +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.ContextHandler; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.server.handler.ResourceHandler; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.util.log.Log; @@ -42,9 +46,11 @@ public class Launcher { connector.setHost("127.0.0.1"); connector.setPort(443); s.setConnectors(new Connector[]{connector}); - ServletContextHandler sh = new ServletContextHandler(); - s.setHandler(sh); - sh.addServlet(new ServletHolder(new TestServlet()), "/"); + + HandlerList hl = new HandlerList(); + hl.setHandlers(new Handler[]{generateStaticContext(), + generateGigiContext()}); + s.setHandler(hl); s.start(); if (connector.getPort() <= 1024 && !System.getProperty("os.name").toLowerCase().contains("win")) { @@ -55,6 +61,22 @@ public class Launcher { } } + private static ServletContextHandler generateGigiContext() { + ServletContextHandler servlet = new ServletContextHandler( + ServletContextHandler.SESSIONS); + servlet.addServlet(new ServletHolder(new Gigi()), "/*"); + return servlet; + } + + private static ContextHandler generateStaticContext() { + ResourceHandler rh = new ResourceHandler(); + rh.setResourceBase("static"); + ContextHandler ch = new ContextHandler(); + ch.setHandler(rh); + ch.setContextPath("/static"); + return ch; + } + private static SslContextFactory generateSSLContextFactory() throws NoSuchAlgorithmException, KeyStoreException, IOException, CertificateException, FileNotFoundException {