jdk信任證書


  在使用httpclient請求時,使用proxy設置后,然后就報錯了。

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

 

 

1、獲取訪問網址的證書.cer文件.

  在瀏覽器輸入網址,點擊網址左邊的鎖符號

  

 

 

2、添加jdk信任證書

將下載好的.cer文件復制到 %JAVA_HOME%/jre/bin/目錄下,打開命令窗口輸入以下命令(報錯就繼續往下看):

  

keytool -import -v -trustcacerts -alias 文件名 -file 文件名.cer -storepass changeit -keystore %JAVA_HOME%/jre/lib/security/cace

呵呵,這里就踩坑了,網上一群抄來抄去的也不驗證到底行不行,

說明:

  changeit 是密碼, java默認。

  keytool.exe是在 %JAVA_HOME%/jre/bin/目錄下的,jdk默認自帶。

  cacerts是文件(即將要把證書導入到其中的文件),在 %JAVA_HOME%/jre/lib目錄

  keytool命令的 -ketstore參數 跟着的密鑰庫名稱要加上雙引號。

  是否信任此證書? [否]:"  ,那么請輸入"y"。

 

3、查看cacerts中的證書列表

 keytool -list -keystore "%JAVA_HOME%/jre/lib/security/cacerts"  -storepass changeit

 

4、刪除cacerts中指定名稱的證書

keytool -import -alias 文件名 -file 文件名.cer -keystore "%JAVA_HOME%/jre/lib/security/cacerts"  -storepass changeit-trustcacerts

(當初網上找到2的時候,復制命令死活報錯,直到3、4命令,看到了 -keystore  "x/x/x" )

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM