我刚遇到一个异常,表明该问题与本文所写的不一样:
java.io.IOException:IOException调用 https://subdomain.mydomain.com/auth/version:HTTPS主机名错误: 应该是
主机名已更改,但是我已经检查了10次:应为主机名与实际主机名相同。
在查找了源之后,我发现了sun.net.www.protocol.https.HttpsClient
类的以下代码片段:
if ((cipher != null) && (cipher.indexOf("_anon_") != -1)) {
return;
} else if ((hostnameVerifier != null) &&
(hostnameVerifier.verify(host, session))) {
return;
}
serverSocket.close();
session.invalidate();
throw new IOException("HTTPS hostname wrong: should be <"
+ url.getHost() + ">");
我强烈怀疑问题不是主机名,这是正确的,但在HostnameVerifier中又出现了其他问题。
我现在的想法是,如何调试该类。 JDK没有附带源代码。
所以我的实际问题是:如何为Sun内部课程获取并连接正确源?我希望这很关键,以便它们与确切的Java次要版本相匹配...
我的代码最近一次工作了,所以我怀疑它可以通过Java更新来实现,但是除非我能够进行调试,否则这些仅仅是推测...
任何一种替代Eclipse的解决方案也将受到欢迎,我只需要找出Java有什么问题...