2013-11-01 76 views
1
  • 處理請求時捕獲到I/O異常(org.apache.axis2.AxisFault):sun.security.validator.ValidatorException:PKIX路徑構建失敗:sun。 security.provider.certpath.SunCertPathBuilderException:無法找到有效的認證路徑要求的目標

從JDK 1.5遷移爲JDK 1.7我收到sun.security.validator.ValidatorException後。從jdk1.5遷移到jdk1.7時出現證書問題

步驟: 用1.7替換jdk 1.5(包括jre)。 用jdk1.7編譯代碼。彙編成功了。 同時訪問URL與服務器提供的證書我在jdk1.7中得到sun.security.validator.ValidatorException。但是這個異常不在jdk1.5中拋出。 在cacerts文件中,我已導入具有別名xxxx的特定證書。如果我訪問URL中的域名作爲jdk1.7中的別名名稱證書中的名稱不會拋出異常,並且工作正常...

我是否需要爲將jdk1.5遷移到jdk1.7做任何事情? 我真的在上面的過程中錯過了一些東西嗎?

任何幫助將不勝感激...

+0

如果您在瀏覽器中或使用'curl'訪問URL,該怎麼辦? – artbristol

+0

您的證書是否包含關鍵擴展名? [JDK Bug 6668231](http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6668231)提到了Java 5和7的行爲差異。它還說_...必須拒絕證書/ CRL如果它遇到一個關鍵的擴展它不會識別._ – halfbit

+1

您將哪個cacerts文件導入到證書中?運行時哪個JRE實際上正在使用?例如,在Windows上,當您安裝JDK時,實際上是在JDK文件夾中安裝了2個JRE,其中一個位於Java文件夾中。 – gtrig

回答

0

自簽名這是由服務器沒有擴展發送證書。

版證書是1

我使用/jdk1.7/jre/lib/security/cacerts只有JRE 1.7。我也檢查了cacerts文件。證書詳細信息已正確更新。

+0

http://stackoverflow.com/questions/11153058/java7-refusing-to-trust-certificate-in-trust-store – Shriram

相關問題