1
我正在使用Java SE6 Mustang,並且正在嘗試連接到使用SSL的Web服務。我創建Web服務客戶端與wsimport的,我可以忽略例外:沒有使用替代名稱添加異常
javax.net.ssl.SSLHandshakeException:java.security.cert.CertificateException:沒有主題備用名稱目前
我正在使用Java SE6 Mustang,並且正在嘗試連接到使用SSL的Web服務。我創建Web服務客戶端與wsimport的,我可以忽略例外:沒有使用替代名稱添加異常
javax.net.ssl.SSLHandshakeException:java.security.cert.CertificateException:沒有主題備用名稱目前
不,你不能忽略這個異常。
如果在創建客戶端時出現此錯誤,則可以下載WSDL並使用它執行生成。像這樣的東西。但我不檢查它。
wsimport -p com.test -wsdllocation https://192.168.1.200:8443/services/ws/service?wsdl service.wsdl
但是,如果您在訪問Web服務時遇到此錯誤,則可以禁用主機名稱詭計。 以下是禁用主機名檢查的示例。
static{
javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(
new javax.net.ssl.HostnameVerifier(){
public boolean verify(String hostname,
javax.net.ssl.SSLSession sslSession) {
System.out.println("Verifying hostname: " + hostname);
return true;
}
});
}
您確定服務器證書中的cn與服務器的地址相匹配嗎? – anfy2002us