实际上,上面的代码没有错。问题似乎在于Weblogic和此Certicom TLS模块。当我查看 服务器 选项, SSL 和 高级时,
我看到可以指定自定义HostnameVerifier(SSLMBean.HostnameVerifier),但是建议干扰证书验证功能的唯一元素已被弃用。
我在Weblogic之外尝试了上面的代码,并且效果很好(尽管在文章中修复了HostnameVerifier)。
然后,我尝试按照ipolevoy在另一个问题中建议的那样,将“ -DUseSunHttpHandler =
true”添加到Weblogic参数中。它开始工作了。
话虽这么说,在Oracle Service Bus服务器上切换HTTP处理程序似乎有点冒险。可能有副作用会在几周后再次咬我。
我还尝试定义自己的trustStore并将其指向包含所需密钥的jssecacert。Weblogic也忽略了它,因为它对每个服务器都有自己的trustStore设置。因此,我求助于管理员手动导入所需的密钥或将Weblogic指向我自己的商店。



