我已經編寫了一個通過jaxws連接到SSL Web服務(包括客戶端證書)的應用程序。爲此,我有一個wstrust.jks,其中包含ws的受信任根證書,client.p12是連接到ws時使用的客戶端證書。然後我創建了一個自定義的SSLSocketFactory,以便能夠在連接到ws時使用我的wstrust.jks和client.12。我告訴jaxws使用我的實現:從Java bean到Web服務的SSL連接問題
[javax.xml.ws.BindingProvider] .getRequestContext()。put(JAXWSProperties.SSL_SOCKET_FACTORY,customSSLSocketFactory);
如果我將它作爲獨立的Java應用程序運行,它就像一個魅力一樣。然而,當我在部署爲Tomcat下運行的war文件的Java bean(JSF)中使用相同的技術時,我得到一個「PKIX路徑構建失敗」 - 錯誤。
但是,如果我通過JAVA_OPTS配置SSL,當我啓動我的Tomcat(通過-Djavax.net.ssl。*參數)我得到它的工作。
所以我的問題:
我如何(或者是可能的)讓我定製的SSLSocketFactory,技術到Java bean中工作?
我想爲tomcat的自己裹在我的應用程序,作爲一個bean運行時,它是工作不同,我希望用尊重的自定義SSLSocketFactory的心不是...
感謝有這方面的投入!
/Tobbe