За неделю до моего проекта используется версия Spring Boot версии 1.4.0.M3, в которой используется tomcat-embedded-core-8.0.33. Здесь я был в состоянии создать многофункциональный разъем с следующим кодом:Установить TrustManager для соединителя Tomcat программно
@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 Загрузочный использует 8.5 * Tomcat, где метод .getEndpoint() объявлен. защищенный.
Как программно установить TrustManager для конкретного коннектора или обработчика протокола?