Java 如何在Jersey 1.17和apache连接器中使用主机名验证
目前,我能够使用apache连接器通过https与Jersey成功连接,但我设置的主机名验证似乎没有使用Java 如何在Jersey 1.17和apache连接器中使用主机名验证,java,jersey-client,jersey-1.0,Java,Jersey Client,Jersey 1.0,目前,我能够使用apache连接器通过https与Jersey成功连接,但我设置的主机名验证似乎没有使用 HostnameVerifier hostnameVerifier = new HostnameVerifier() { @Override public boolean verify(final String hostname, final SSLSession session) { return false;
HostnameVerifier hostnameVerifier = new HostnameVerifier() {
@Override
public boolean verify(final String hostname, final SSLSession session) {
return false;
}
};
HTTPSProperties httpsProperties = new HTTPSProperties(hostnameVerifier, sslContext);
final ApacheHttpClientConfig clientConfig = new DefaultApacheHttpClientConfig();
clientConfig.getProperties().put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, httpsProperties);
final Client client = this.clientFactory.getClient(clientConfig);
HTTPS设置工作正常,但主机名验证除外。没有日志输出,并且在验证方法中不会命中断点。想知道我是否错误地设置了主机名验证程序
旁注-我意识到1.17不是jersey的最新版本,但目前更新对我来说不是一个好的选择。你能添加你的SSLContext吗?需要注意的一点是,只有在服务器主机名和证书信息实际上不匹配时才会调用主机名验证程序,因此,您需要针对设置不正确的端点进行测试。