Dedicated package for JDK http server
[lgpl/argeo-commons.git] / org.argeo.cms.lib.jetty / src / org / argeo / cms / jetty / JettyHttpServer.java
index 4141cd8ccdb8698690b604f2318ab8dfb7e09031..363bbaebe498362973675995c4c63e7c18e20ab6 100644 (file)
@@ -13,7 +13,7 @@ import javax.websocket.server.ServerContainer;
 import org.argeo.api.cms.CmsLog;
 import org.argeo.api.cms.CmsState;
 import org.argeo.cms.CmsDeployProperty;
-import org.argeo.cms.http.HttpServerUtils;
+import org.argeo.cms.http.server.HttpServerUtils;
 import org.eclipse.jetty.http.UriCompliance;
 import org.eclipse.jetty.server.HttpConfiguration;
 import org.eclipse.jetty.server.HttpConnectionFactory;
@@ -131,8 +131,6 @@ public class JettyHttpServer extends HttpsServer {
        }
 
        protected void configureConnectors() {
-               HttpConfiguration httpConfiguration = new HttpConfiguration();
-
                String httpPortStr = getDeployProperty(CmsDeployProperty.HTTP_PORT);
                String httpsPortStr = getDeployProperty(CmsDeployProperty.HTTPS_PORT);
                if (httpPortStr != null && httpsPortStr != null)
@@ -151,13 +149,15 @@ public class JettyHttpServer extends HttpsServer {
                        boolean httpEnabled = httpPortStr != null;
                        boolean httpsEnabled = httpsPortStr != null;
 
-                       if (httpsEnabled) {
-                               int httpsPort = Integer.parseInt(httpsPortStr);
-                               httpConfiguration.setSecureScheme("https");
-                               httpConfiguration.setSecurePort(httpsPort);
-                       }
-
                        if (httpEnabled) {
+                               HttpConfiguration httpConfiguration = new HttpConfiguration();
+
+                               if (httpsEnabled) {// not supported anymore to have both http and https, but it may change again
+                                       int httpsPort = Integer.parseInt(httpsPortStr);
+                                       httpConfiguration.setSecureScheme("https");
+                                       httpConfiguration.setSecurePort(httpsPort);
+                               }
+
                                int httpPort = Integer.parseInt(httpPortStr);
                                httpConnector = new ServerConnector(server, new HttpConnectionFactory(httpConfiguration));
                                httpConnector.setPort(httpPort);
@@ -188,13 +188,13 @@ public class JettyHttpServer extends HttpsServer {
                                        sslContextFactory.setNeedClientAuth(true);
 
                                // HTTPS Configuration
-                               HttpConfiguration https_config = new HttpConfiguration(httpConfiguration);
-                               https_config.addCustomizer(new SecureRequestCustomizer());
-                               https_config.setUriCompliance(UriCompliance.LEGACY);
+                               HttpConfiguration httpsConfiguration = new HttpConfiguration();
+                               httpsConfiguration.addCustomizer(new SecureRequestCustomizer());
+                               httpsConfiguration.setUriCompliance(UriCompliance.LEGACY);
 
                                // HTTPS connector
                                httpsConnector = new ServerConnector(server, new SslConnectionFactory(sslContextFactory, "http/1.1"),
-                                               new HttpConnectionFactory(https_config));
+                                               new HttpConnectionFactory(httpsConfiguration));
                                int httpsPort = Integer.parseInt(httpsPortStr);
                                httpsConnector.setPort(httpsPort);
                                httpsConnector.setHost(httpHost);