我想使用SoapUI對內部(使用內部鑄造證書)Web服務運行一些測試。我不確定我是否完全掌握了SSL握手的內容。但是我導出證書端點到.cer文件,然後發射了Java的密鑰工具使用此命令:使用SoapUI測試內部安全的Web服務?
keytool -import -alias ca -file myservice.cer -keystore cacerts –storepass changeit
這是我從another SO question了。然後,我將此信任庫文件(cacerts)添加到SoapUI中的項目屬性中。但是,當我嘗試將WSDL添加到項目中,我仍然得到同樣的錯誤之前:
Error loading [https://myservice?wsdl]: org.apache.xmlbeans.XmlException: 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
我是完全關閉基地?我是否將鏈中的所有證書添加到信任庫?我無法做到這一點,它告訴我,別名已被使用?還是應該從外部信任機構獲得證書?
查看本[回答](http://stackoverflow.com/a/12146838/1788964)到[SO問題](http://stackoverflow.com/questions/6908948/java-sun-security- provider-certpath-suncertpathbuilderexception-unable-to-find)關於您正在獲取的錯誤。那裏的OP使用自簽名證書。 –
謝謝!但仍然沒有工作。我嘗試將鏈中的3個證書添加到現有的密鑰庫中,也添加到新創建的密鑰庫中,並在我的SoapUI項目中引用該密鑰庫,但在嘗試添加WSDL時仍然出現相同的錯誤。 –
我通過添加非安全的WSDL來實現這個功能。事實證明,WSDL可以設置爲可用於HTTP,而在端點上則需要SSL。 –