ひえ、
Salesforceに接続し、そこで値を更新するJavaコードを作成しました。ローカルシステムから-として実行すると、正常に機能します。 スタンドアロンJavaアプリケーションしかし、私の主な目標はそれをfilenet BPMワークフローのJavaコンポーネントと見なすことです。したがって、ワークフロープロセスがこれに到達すると- Javaコンポーネントの場合、タイトルとしてエラーがスローされます
スタックスタックトレース全体は次のとおりです
com.sforce.ws.ConnectionException: Failed to send request to https://login.salesforce.com/services/Soap/c/24.0/0DF90000000PX8r
at com.sforce.ws.transport.SoapConnection.send(SoapConnection.Java:129)
at com.sforce.soap.enterprise.EnterpriseConnection.login(EnterpriseConnection.Java:1052)
at com.sforce.soap.enterprise.EnterpriseConnection.<init>(EnterpriseConnection.Java:399)
at salesforceupdate.SalesForceUpdate.main(SalesForceUpdate.Java:70)
at salesforceupdate.Callin.UpdateSL(Callin.Java:19)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:60)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:37)
at Java.lang.reflect.Method.invoke(Method.Java:611)
at filenet.vw.integrator.adaptors.Java.VWJavaAdaptor.execute(VWJavaAdaptor.Java:426)
at filenet.vw.integrator.base.VWAdaptorEx$AdaptorAction.run(VWAdaptorEx.Java:120)
at Java.security.AccessController.doPrivileged(AccessController.Java:284)
at javax.security.auth.Subject.doAsPrivileged(Subject.Java:727)
at filenet.vw.integrator.base.VWAdaptorEx.run(VWAdaptorEx.Java:360)
Caused by: javax.net.ssl.SSLException: Java.lang.RuntimeException: Unexpected error: Java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at com.ibm.jsse2.n.a(n.Java:42)
at com.ibm.jsse2.tc.a(tc.Java:96)
at com.ibm.jsse2.tc.a(tc.Java:340)
at com.ibm.jsse2.tc.a(tc.Java:555)
at com.ibm.jsse2.tc.a(tc.Java:510)
at com.ibm.jsse2.tc.startHandshake(tc.Java:381)
at com.ibm.net.ssl.www2.protocol.https.c.afterConnect(c.Java:151)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.Java:64)
at Sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.Java:1024)
at com.ibm.net.ssl.www2.protocol.https.b.getOutputStream(b.Java:51)
at com.sforce.ws.transport.JdkHttpTransport.connectRaw(JdkHttpTransport.Java:115)
at com.sforce.ws.transport.JdkHttpTransport.connect(JdkHttpTransport.Java:79)
at com.sforce.ws.transport.SoapConnection.send(SoapConnection.Java:107)
... 13 more
Caused by: Java.lang.RuntimeException: Unexpected error: Java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at com.ibm.jsse2.util.e.<init>(e.Java:117)
at com.ibm.jsse2.util.d.a(d.Java:20)
at com.ibm.jsse2.hc.a(hc.Java:58)
at com.ibm.jsse2.hc.checkServerTrusted(hc.Java:88)
at filenet.ws.utils.jsse.FnTrustManager.checkServerTrusted(FnTrustManager.Java:156)
at com.ibm.jsse2.hb.a(hb.Java:382)
at com.ibm.jsse2.hb.a(hb.Java:23)
at com.ibm.jsse2.gb.n(gb.Java:295)
at com.ibm.jsse2.gb.a(gb.Java:269)
at com.ibm.jsse2.tc.a(tc.Java:347)
at com.ibm.jsse2.tc.g(tc.Java:416)
at com.ibm.jsse2.tc.a(tc.Java:60)
... 21 more
Caused by: Java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at Java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.Java:287)
at Java.security.cert.PKIXParameters.<init>(PKIXParameters.Java:143)
at Java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.Java:101)
at com.ibm.jsse2.util.e.<init>(e.Java:17)
... 32 more
私はこのエラーに関するすべてをグーグルで検索し、ドメインの。crtファイルを生成し、keystoreファイルを作成し、コードでそれについて言及しました
System.setProperty("javax.net.ssl.trustStore","C:\\Program Files\\IBM\\WebSphere\\AppServer\\Java\\jre\\bin\\secure.ts");
System.setProperty("javax.net.ssl.trustStorePassword", "xxxxx");
ちなみに私も変更しましたWASコンソールのキーmanagemnetと証明書
しかし、私は同じエラーを受け取り続けます..何をすべきかわからない、どんな助けも素晴らしいでしょう
前もって感謝します
このエラーメッセージは通常、指定したトラストストアを読み取ることができないことを意味します。私がチェックするもの:
keytool -list
で確認してください)?編集:
System.setProperty
を使用せず、Javaプロセスを-Djavax.net.ssl.XXX
で開始するときにオプションを設定します。このアドバイスの理由は次のとおりです。IBMセキュリティー・フレームワークは、 options beforeプロパティを設定します(たとえば、クラスのstatic
ブロックで)。もちろん、これはフレームワーク固有であり、バージョンごとに変わる可能性があります。