0
私はSOAP Webサービスの利用を開始するために認証に必要なJKSを持っています。 私のローカルマシン(ウィンドウ)上ですべて正常に動作しています。以下のためのEclipseでTomcatのための私の起動パラメータに以下を追加します。本番で要求されたターゲットへの有効な認証パスを実稼働環境で見つけることができない問題を解決するにはどうすればよいですか?
-Dsun.security.ssl.allowUnsafeRenegotiation=true -Djavax.net.ssl.keyStore="path\to\keystore\keystore.jks" -Djavax.net.ssl.keyStorePassword=passwordC -Djavax.net.ssl.keyStoreType=jks
を(Ubuntuの)私たちは、次のしている:
-Dsun.security.ssl.allowUnsafeRenegotiation=true -Djavax.net.ssl.keyStore=/path/to/keystore/keystore.jks -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.keyStoreType=jks"
私は、Java 1.7.0.80とTomcat 7.0.61を使用しています
私は、SOAP Webサービスに接続するとき、私は、次のスタックトレースを取得:
Caused by: javax.net.ssl.SSLHandshakeException: SSLHandshakeException invoking https://www.correosexpress.com/wsp/services/GrabacionEnvio: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1359)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1343)
at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:215)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:652)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
... 121 more
Caused by: 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
I Javaのバージョンであるtomcatのバージョンを確認しました。 また、JKSへのパスが正しいかどうか確認しました。
私のローカルマシンでは、他の証明書を手動でインストールしませんでした。つまり、jacのコンテンツに関連するカケートにはエントリがありません。
証明書がcacertsに存在する必要がありますか? – Nazeem
いいえ、ubuntuでcacertsの証明書はjavaによって無視されます。私はjavaキーストアを意味する – TheHckblues