... javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.h: No trusted certificate found ... com.ibm.net.ssl.www2.protocol.https.a.getInputStream(a.java:13) com.alipay.util.AlipayNotify.checkUrl(AlipayNotify.java:109) com.alipay.util.AlipayNotify.verifyResponse(AlipayNotify.java:90) com.alipay.util.AlipayNotify.verify(AlipayNotify.java:43) ... Caused by: com.ibm.jsse2.util.h: No trusted certificate found ...
看样子是要安装证书,但一时联系不到支付宝技术支持。由于时间比较急,只好找其他的办法。上网查找解决方案,大多数都是说要安装证书或者没有答案的问题帖子。由于对WebSphere服务器不是很了解,平时很少会在后台调用https接口,一下子没了头绪。最后尝试在stackoverflow(http://stackoverflow.com/)再查一把看看吧。一查,没想真有人提问过,并且还有答案。于是马上让开发的同事按方案进行修改,部署上去,测试,OK了。
点击查看解决方案,答案里面貌似还提供了另外一种方式的解决办法的链接。
最后说一下解决的方案思路是重新定义建立https链接的org.apache.http.conn.ssl.SSLSocketFactory类,改变其证书信任管理器的规则(不验证证书,信任全部),从而绕过证书认证。
由于知识水平以及英文水平有限,对答案的理解可能有误,欢迎各位拍砖。