在浏覽器中訪問https是件挺方便的事與訪問http站點相比也就是地址欄上多個s但是在java平台上訪問https可就麻煩多了Java虛擬機並不直接使用操作系統的key ring而是有自己的security manager與操作系統類似jdk的security manager默認有一堆的根證書信任如果你的https站點證書是花錢申請的被這些根證書所信任那使用java來訪問此https站點會非常方便但假如你的https證書是自己簽名的就需要將證書導入至JDK的信任證書中否則訪問時會報SSL錯誤假如你的webserice是基於https來進行訪問而此站點證書是自簽名類型的那麼部署時一定要使用keytool進行證書導入否則無法正常訪問
JDK keystore存放路徑
默認在 $JAVA_HOME/jre/lib/security/cacerts 在我的Mountaion Lion中存放路徑為
/System/Library/Java/JavaVirtualMachines/jdk/Contents/Home/lib/security/cacerts
keystore的默認密碼
changeit
有人說OS X中java的 Keystore密碼被更改成了 changeme所以如果你用上面那個訪問失敗可以試試這個
keytool亂碼
keytool在OS X中經常顯示為亂碼它在中文OS X中輸出GB編碼所以要將terminal的默認編碼更改成GB或者中文(ECU)
導入證書
首先
先通過浏覽器將證書下載下來
點擊顯示證書詳細的時候
直接將圖標拖動到桌面上即可
通過keytool命令來導入證書
注意導入時需要管理員權限
所以命令前面要加sudo
不知道這個在win
系統上是不是也要如此
From:http://tw.wingwit.com/Article/program/Java/hx/201311/27119.html