Проблема, на которую он жалуется, заключается в том, что при создании соединения SSL сервер должен предоставить действительный сертификат клиенту. Вы можете написать соответствующую конечную точку на Java (я думаю, HTTPServerSocket сделает это), но для ее установки потребуется взломать. Вероятно, проще настроить локальный веб-сервер с чем-нибудь, что правильно обрабатывает SSL - Apache, lighttp, что угодно - и создать самоподписанный сертификат с помощью инструментов openssl.
обновленный
Вот пример из альманаха Java. http://www.exampledepot.com/egs/javax.net.ssl/Server.html
Для сокета сервера SSL требуются сертификаты, которые он будет отправлять клиентам для аутентификации. Сертификаты должны содержаться в хранилище ключей, местоположение которого должно быть явно указано (по умолчанию нет). Следуя примеру, мы опишем, как создать и указать хранилище ключей для сокета сервера SSL для использования.
try {
int port = 443;
ServerSocketFactory ssocketFactory = SSLServerSocketFactory.getDefault();
ServerSocket ssocket = ssocketFactory.createServerSocket(port);
// Listen for connections
Socket socket = ssocket.accept();
// Create streams to securely send and receive data to the client
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
// Read from in and write to out...
// Close the socket
in.close();
out.close();
} catch(IOException e) {
}
Укажите хранилище ключей сертификатов, используя системное свойство javax.net.ssl.keyStore:
> java -Djavax.net.ssl.keyStore=mySrvKeystore -Djavax.net.ssl.keyStorePassword=123456 MyServer