Containers with HTTPS support

Though some containers support HTTPS, the way it is configured is not yet uniform across them.

Jetty 10.x onwards

The Jetty container supports HTTPS, both as a complement to the HTTP connector or as an HTTPS-only connector.

To add HTTPS support, in addition to the HTTP support:

  1. Set the property JettyPropertySet.MODULES to include the https module (in addition to the http module)
  2. Set the properties JettyPropertySet.CONNECTOR_KEY_STORE_FILE and JettyPropertySet.CONNECTOR_KEY_STORE_PASSWORD with the relevant details
  3. Optionally, JettyPropertySet.CONNECTOR_HTTPS_PORT allows you to change the HTTPS port (default is 9443)

To only have HTTPS (and no HTTP) configured:

  1. Set the property JettyPropertySet.MODULES to have the https module instead of the http module
  2. Set the property GeneralPropertySet.PROTOCOL to https
  3. Set the properties JettyPropertySet.CONNECTOR_KEY_STORE_FILE and JettyPropertySet.CONNECTOR_KEY_STORE_PASSWORD with the relevant details
  4. Make sure you set both ServletPropertySet.PORT and JettyPropertySet.CONNECTOR_HTTPS_PORT to the same port number

Tomcat 6.x onwards and TomEE

The Tomcat 6.x onwards and TomEE containers either use HTTP or HTTPS (not both). To switch to HTTPS:

  1. Set the property GeneralPropertySet.PROTOCOL to https
  2. Set the properties TomcatPropertySet.CONNECTOR_KEY_STORE_FILE and TomcatPropertySet.CONNECTOR_KEY_STORE_PASSWORD with the relevant details

The property ServletPropertySet.PORT is then used for HTTPS.