I'm trying to call https soap service(Cisco call manager, if it helps) from websphere application.
I've added certificate both to ibm java keystore and websphere keystore. I got another exception first and used this to resolve.
I didn't wanted to mess with security.xml or any other keystore of the server because there's also another applications are running on it. I want to know which keystore is mentioned by following stack and is there any way to set right password to it?
I'm getting this exception:
com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: java.net.SocketException: java.security.KeyStoreException: IBMKeyManager: Problem accessing key store java.io.IOException: Keystore was tampered with, or password was incorrect
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:133)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:154)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:95)
at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:117)
at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:599)
at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:558)
at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:543)
at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:440)
at com.sun.xml.internal.ws.client.Stub.process(Stub.java:223)
at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:150)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:110)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:90)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:122)
at com.sun.proxy.$Proxy32.getPhone(Unknown Source)
... My code ...
Caused by: java.net.SocketException: java.security.KeyStoreException: IBMKeyManager: Problem accessing key store java.io.IOException: Keystore was tampered with, or password was incorrect
at javax.net.ssl.DefaultSSLSocketFactory.a(SSLSocketFactory.java:12)
at javax.net.ssl.DefaultSSLSocketFactory.createSocket(SSLSocketFactory.java:8)
at com.ibm.net.ssl.www2.protocol.https.c.createSocket(c.java:212)
at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:437)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:551)
at com.ibm.net.ssl.www2.protocol.https.c.<init>(c.java:107)
at com.ibm.net.ssl.www2.protocol.https.c.a(c.java:88)
at com.ibm.net.ssl.www2.protocol.https.d.getNewHttpClient(d.java:33)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:978)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.java:54)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1043)
at com.ibm.net.ssl.www2.protocol.https.b.getOutputStream(b.java:67)
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:121)
... 37 more
Caused by: java.security.KeyStoreException: IBMKeyManager: Problem accessing key store java.io.IOException: Keystore was tampered with, or password was incorrect
at com.ibm.jsse2.rc.a(rc.java:70)
at com.ibm.jsse2.tc.g(tc.java:24)
at com.ibm.jsse2.tc.<init>(tc.java:16)
at com.ibm.jsse2.tc.e(tc.java:10)
at com.ibm.jsse2.SSLSocketFactoryImpl.<init>(SSLSocketFactoryImpl.java:11)
at java.lang.J9VMInternals.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1572)
at javax.net.ssl.SSLSocketFactory.getDefault(SSLSocketFactory.java:30)
at javax.net.ssl.HttpsURLConnection.getDefaultSSLSocketFactory(HttpsURLConnection.java:18)
at javax.net.ssl.HttpsURLConnection.<init>(HttpsURLConnection.java:46)
at com.ibm.net.ssl.www2.protocol.https.b.<init>(b.java:40)
at com.ibm.net.ssl.www2.protocol.https.Handler.openConnection(Handler.java:9)
at java.net.URL.openConnection(URL.java:1005)
at com.sun.xml.internal.ws.api.EndpointAddress.openConnection(EndpointAddress.java:212)
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.createHttpConnection(HttpClientTransport.java:240)
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:117)
... 37 more