【发布时间】:2017-06-14 09:27:28
【问题描述】:
目前我无法让我的 Grizzly 服务器使用 HTTPS 运行。我将它与泽西岛结合使用。
Grizzly 版本是:2.3.23
球衣版本:2.24.1
我是这样启动服务器的:
public class Main {
public static final String BASE_URI = "https://localhost:8443/api/";
private static final String KEYSTORE_LOC = "I:\\rest-api\\keystore";
//private static final String KEYSTORE_LOC = "./server.cert";
private static final String KEYSTORE_PASS= "somepw123";
public static HttpServer startServer() {
final ResourceConfig rc = new ResourceConfig()
.register(MultiPartFeature.class)
.packages("com.restapi");
SSLContextConfigurator sslCon = new SSLContextConfigurator();
sslCon.setKeyStoreFile(KEYSTORE_LOC);
sslCon.setKeyStorePass(KEYSTORE_PASS);
return GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc, true,new SSLEngineConfigurator(sslCon).setClientMode(false).setNeedClientAuth(false));
}
keystore文件是用keytool生成的:
keytool -genkey -keystore ./keystore -alias serverKey -dname
当我尝试打开浏览器告诉我的 URL 时:
localhost 意外关闭连接
感谢您的帮助!
【问题讨论】:
标签: java rest ssl jersey grizzly