java.io.IOException: Invalid keystore format

Apache's JIRA Issue Tracker | Krzysztof Sobkowiak | 2 years ago
  1. 0

    I have built the {{cxf-ws-security-signature}} example contained in the assembly and installed it in ServiceMix. Next I have run {{mvn exec:java}} in the sample directory and got following error {code} java.io.IOException: Server returned HTTP response code: 500 for URL: http://localhost:8181/cxf/HelloWorldSecurity at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1626) at org.apache.servicemix.examples.cxf.Client.sendRequest(Client.java:47) at org.apache.servicemix.examples.cxf.Client.main(Client.java:31) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293) at java.lang.Thread.run(Thread.java:745) {code} Looking into the log I have found following error {code} Caused by: org.apache.wss4j.common.ext.WSSecurityException: Cannot create Crypto class org.apache.ws.security.components.crypto.Merlin Original Exception was org.apache.wss4j.common.ext.WSSecurityException: Failed to load credentials. Original Exception was java.io.IOException: Invalid keystore format at org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:132)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.loadCrypto(WSHandler.java:1045)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.loadSignatureCrypto(WSHandler.java:963)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.decodeSignatureParameter2(WSHandler.java:1398)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.doReceiverAction(WSHandler.java:347)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal(WSS4JInInterceptor.java:266)[195:org.apache.cxf.cxf-rt-ws-security:3.0.4] ... 39 more Caused by: org.apache.wss4j.common.ext.WSSecurityException: Failed to load credentials. Original Exception was java.io.IOException: Invalid keystore format at org.apache.wss4j.common.crypto.Merlin.load(Merlin.java:407)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.Merlin.loadProperties(Merlin.java:224)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.Merlin.<init>(Merlin.java:160)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:127)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] ... 44 more Caused by: java.io.IOException: Invalid keystore format at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:650)[:1.7.0_76] at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:55)[:1.7.0_76] at java.security.KeyStore.load(KeyStore.java:1214)[:1.7.0_76] at org.apache.wss4j.common.crypto.Merlin.load(Merlin.java:401)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] ... 47 more {code} Checking the original {{server-truststore.jks}} gives following result {code} $ file server-truststore.jks server-truststore.jks: Java KeyStore $ file -bi server-truststore.jks application/x-java-keystore; charset=binary {code} but the same check with the file contained in the assemblied examples gives following result {code} $ file server-truststore.jks server-truststore.jks: data $ file -bi server-truststore.jks application/octet-stream; charset=binary {code} Something must be changed by the assembly plugin

    Apache's JIRA Issue Tracker | 2 years ago | Krzysztof Sobkowiak
    java.io.IOException: Invalid keystore format
  2. 0

    I have built the {{cxf-ws-security-signature}} example contained in the assembly and installed it in ServiceMix. Next I have run {{mvn exec:java}} in the sample directory and got following error {code} java.io.IOException: Server returned HTTP response code: 500 for URL: http://localhost:8181/cxf/HelloWorldSecurity at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1626) at org.apache.servicemix.examples.cxf.Client.sendRequest(Client.java:47) at org.apache.servicemix.examples.cxf.Client.main(Client.java:31) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293) at java.lang.Thread.run(Thread.java:745) {code} Looking into the log I have found following error {code} Caused by: org.apache.wss4j.common.ext.WSSecurityException: Cannot create Crypto class org.apache.ws.security.components.crypto.Merlin Original Exception was org.apache.wss4j.common.ext.WSSecurityException: Failed to load credentials. Original Exception was java.io.IOException: Invalid keystore format at org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:132)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.loadCrypto(WSHandler.java:1045)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.loadSignatureCrypto(WSHandler.java:963)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.decodeSignatureParameter2(WSHandler.java:1398)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.wss4j.dom.handler.WSHandler.doReceiverAction(WSHandler.java:347)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3] at org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal(WSS4JInInterceptor.java:266)[195:org.apache.cxf.cxf-rt-ws-security:3.0.4] ... 39 more Caused by: org.apache.wss4j.common.ext.WSSecurityException: Failed to load credentials. Original Exception was java.io.IOException: Invalid keystore format at org.apache.wss4j.common.crypto.Merlin.load(Merlin.java:407)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.Merlin.loadProperties(Merlin.java:224)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.Merlin.<init>(Merlin.java:160)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] at org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:127)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] ... 44 more Caused by: java.io.IOException: Invalid keystore format at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:650)[:1.7.0_76] at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:55)[:1.7.0_76] at java.security.KeyStore.load(KeyStore.java:1214)[:1.7.0_76] at org.apache.wss4j.common.crypto.Merlin.load(Merlin.java:401)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3] ... 47 more {code} Checking the original {{server-truststore.jks}} gives following result {code} $ file server-truststore.jks server-truststore.jks: Java KeyStore $ file -bi server-truststore.jks application/x-java-keystore; charset=binary {code} but the same check with the file contained in the assemblied examples gives following result {code} $ file server-truststore.jks server-truststore.jks: data $ file -bi server-truststore.jks application/octet-stream; charset=binary {code} Something must be changed by the assembly plugin

    Apache's JIRA Issue Tracker | 2 years ago | Krzysztof Sobkowiak
    java.io.IOException: Invalid keystore format
  3. 0

    cxf bouncycastle collision in camel application

    Stack Overflow | 12 months ago | vargen_
    java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: pad block corrupted
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    How to solve keystore load: invalid keystore formtat?

    Stack Overflow | 4 years ago | weldsonandrade
    java.io.IOException: java.io.IOException: invalid keystore format
  6. 0

    java.net.SocketException: java.security.NoSuchAlgorithmException Java refuses to connect

    Stack Overflow | 1 year ago | user1852651
    java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext)

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.io.IOException

      Invalid keystore format

      at org.apache.wss4j.common.crypto.CryptoFactory.getInstance()
    2. Apache WSS4J WS-Security Common
      CryptoFactory.getInstance
      1. org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:132)[188:org.apache.wss4j.wss4j-ws-security-common:2.0.3]
      1 frame
    3. Apache WSS4J DOM WS-Security
      WSHandler.doReceiverAction
      1. org.apache.wss4j.dom.handler.WSHandler.loadCrypto(WSHandler.java:1045)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3]
      2. org.apache.wss4j.dom.handler.WSHandler.loadSignatureCrypto(WSHandler.java:963)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3]
      3. org.apache.wss4j.dom.handler.WSHandler.decodeSignatureParameter2(WSHandler.java:1398)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3]
      4. org.apache.wss4j.dom.handler.WSHandler.doReceiverAction(WSHandler.java:347)[189:org.apache.wss4j.wss4j-ws-security-dom:2.0.3]
      4 frames
    4. Apache CXF Runtime WS Security
      WSS4JInInterceptor.handleMessageInternal
      1. org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal(WSS4JInInterceptor.java:266)[195:org.apache.cxf.cxf-rt-ws-security:3.0.4]
      1 frame