0

私のプロジェクトが Tomcat-embedded-core-8.0.33 を使用する Spring Boot の 1.4.0.M3 バージョンを使用する数週間前。ここでは、次のコードでマルチコネクタを作成できました。

@Bean
EmbeddedServletContainerFactory servletContainer() {
    TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory();
    tomcat.addAdditionalTomcatConnectors(createStandardConnector());
    return tomcat;
}

private Connector createStandardConnector() {
    Connector connector = new Connector(Http11Nio2Protocol.class.getCanonicalName());
    connector.setPort(expiredCertPort);
    connector.setScheme("https");
    connector.setSecure(true);
    Http11Nio2Protocol protocolHandler = (Http11Nio2Protocol) connector.getProtocolHandler();

    protocolHandler.setSSLEnabled(true);
    protocolHandler.getEndpoint().setTrustManagerClassName(TimelessTrustManager.class.getCanonicalName());
    return connector;
}

問題は、バージョン 1.4.0.RELEASE 以降、Spring Boot が 8.5.* Tomcat を使用し、.getEndpoint() メソッドが保護されていると宣言されていることです。

特定のコネクタまたはプロトコル ハンドラの TrustManager をプログラムでインストールする方法は?

4

1 に答える 1

0

.setTrustManagerClassName(文字列)

于 2016-08-26T18:49:27.107 に答える