HTTP connection handlers are responsible for managing the communication with HTTP clients and invoking servlets to process requests from those clients. HTTP connection handlers can be used to host web applications on the server.
Each HTTP connection handler should be configured with one or more HTTP servlet extensions and zero or more HTTP operation log publishers.
If the HTTP Connection Handler cannot be started (for example, if its associated HTTP Servlet Extension fails to initialize), then this does not prevent the entire directory server from starting. The server's start-server tool outputs any errors to the error log. This allows the server to continue serving LDAP requests even with a bad servlet extension.
The configuration properties available for use with an HTTP connection handler include the following:
- Specifies the address on which the connection handler listens for requests from clients. If not specified, then requests are accepted on all addresses bound to the system.
- Specifies the port on which the connection handler listens for requests from clients. Required.
- Indicates whether the connection handler uses SSL/TLS to secure communications with
clients, such as whether it uses HTTPS rather than HTTP. If SSL is enabled, then
trust-manager-providervalues must also be specified.
- Specifies the set of servlet extensions that are enabled for use with the connection handler. You can have multiple HTTP connection handlers listening on different address/port combinations with identical or different sets of servlet extensions. You must configure at least one servlet extension.
- Specifies the set of HTTP operation log publishers that should be used with the connection handler. By default, no HTTP operation log publishers are used.
- Specifies the key manager provider that is used to obtain the certificate presented to clients if SSL is enabled.
- Specifies the trust manager provider that is used to determine whether to accept any client certificates presented to the server.
- Specifies the number of threads that should be used to process requests from HTTP clients. These threads are separate from the worker threads used to process other kinds of requests. The default value of zero means the number of threads are automatically selected based on the number of CPUs available to the Java virtual machine (JVM).
- Specifies the web applications hosted by the server.