Module jdk.httpserver
Package com.sun.net.httpserver

# Class HttpsServer

java.lang.Object
com.sun.net.httpserver.HttpServer
com.sun.net.httpserver.HttpsServer

public abstract class HttpsServer extends HttpServer
This class is an extension of `HttpServer` which provides support for HTTPS.

A `HttpsServer` must have an associated `HttpsConfigurator` object which is used to establish the SSL configuration for the SSL connections.

All other configuration is the same as for `HttpServer`.

Since:
  1.6

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`HttpsServer()`
Constructor for subclasses to call.

## Method Summary

Modifier and Type
Method
Description
`static HttpsServer`
`create()`
Creates a `HttpsServer` instance which is initially not bound to any local address/port.
`static HttpsServer`
`create(InetSocketAddress addr, int backlog)`
Create a `HttpsServer` instance which will bind to the specified `InetSocketAddress` (IP address and port number).
`abstract HttpsConfigurator`
`getHttpsConfigurator()`
Gets this server's `HttpsConfigurator` object, if it has been set.
`abstract void`
`setHttpsConfigurator(HttpsConfigurator config)`
Sets this server's `HttpsConfigurator` object.

### Methods declared in class com.sun.net.httpserver.HttpServer

`bind, createContext, createContext, getAddress, getExecutor, removeContext, removeContext, setExecutor, start, stop`

### Methods declared in class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### HttpsServer

protected HttpsServer()
Constructor for subclasses to call.

## Method Details

### create

public static HttpsServer create() throws IOException
Creates a `HttpsServer` instance which is initially not bound to any local address/port. The `HttpsServer` is acquired from the currently installed `HttpServerProvider`. The server must be bound using `HttpServer.bind(InetSocketAddress,int)` before it can be used. The server must also have a `HttpsConfigurator` established with `setHttpsConfigurator(HttpsConfigurator)`.

Returns:
  an instance of `HttpsServer`
Throws:
  `IOException` - if an I/O error occurs

### create

public static HttpsServer create(InetSocketAddress addr, int backlog) throws IOException
Create a `HttpsServer` instance which will bind to the specified `InetSocketAddress` (IP address and port number). A maximum backlog can also be specified. This is the maximum number of queued incoming connections to allow on the listening socket. Queued TCP connections exceeding this limit may be rejected by the TCP implementation. The `HttpsServer` is acquired from the currently installed `HttpServerProvider`. The server must have a `HttpsConfigurator` established with `setHttpsConfigurator(HttpsConfigurator)`.

Parameters:
  `addr` - the address to listen on, if `null` then `HttpServer.bind(InetSocketAddress,int)` must be called to set the address
  `backlog` - the socket backlog. If this value is less than or equal to zero, then a system default value is used.
Returns:
  an instance of `HttpsServer`
Throws:
  `BindException` - if the server cannot bind to the requested address, or if the server is already bound
  `IOException` - if an I/O error occurs

### setHttpsConfigurator

public abstract void setHttpsConfigurator(HttpsConfigurator config)
Sets this server's `HttpsConfigurator` object.

Parameters:
  `config` - the `HttpsConfigurator` to set
Throws:
  `NullPointerException` - if config is `null`

### getHttpsConfigurator

public abstract HttpsConfigurator getHttpsConfigurator()
Gets this server's `HttpsConfigurator` object, if it has been set.

Returns:
  the `HttpsConfigurator` for this server, or `null` if not set