javax.net.ssl.SSLException: Received fatal alert: handshake_failure

MuleSoft JIRA | Gabriel Dimech | 1 year ago
  1. 0

    When consuming an HTTPS service using the requester in 3.7.0, 3.7.1, Mule fails to connect to the remote server. The same configuration works in 3.6.1. It seems like in 3.6.1, the same error is thrown when the attribute 'protocol="HTTPS"' is omitted. In order to replicate the issue: 1) run and invoke the attached app MULE-8914.zip on http://localhost:8081/test 2) switching to Mule 3.6.1 will not replicate the issue. Stack trace shows: ERROR 2015-10-16 18:26:17,341 [[test-http-1].HTTP_Listener_Configuration.worker.01] org.mule.exception.DefaultMessagingExceptionStrategy: ******************************************************************************** Message : Error sending HTTP request. Message payload is of type: BufferInputStream Type : org.mule.api.MessagingException Code : MULE_ERROR--2 Payload : org.glassfish.grizzly.utils.BufferInputStream@3028c202 JavaDoc : http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html ******************************************************************************** Exception stack is: 1. Received fatal alert: handshake_failure (javax.net.ssl.SSLException) sun.security.ssl.Alerts:208 (http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/net/ssl/SSLException.html) 2. javax.net.ssl.SSLException: Received fatal alert: handshake_failure (java.util.concurrent.ExecutionException) org.glassfish.grizzly.impl.SafeFutureImpl$Sync:349 (null) 3. java.util.concurrent.ExecutionException: javax.net.ssl.SSLException: Received fatal alert: handshake_failure (java.io.IOException) org.mule.module.http.internal.request.grizzly.GrizzlyHttpClient:234 (null) 4. Error sending HTTP request. Message payload is of type: BufferInputStream (org.mule.api.MessagingException) org.mule.module.http.internal.request.DefaultHttpRequester:287 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html) ******************************************************************************** Root Exception stack trace: javax.net.ssl.SSLException: Received fatal alert: handshake_failure at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1639) at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1607) at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1776) at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1068) at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:890) at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:764) at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624) at org.glassfish.grizzly.ssl.SSLConnectionContext.unwrap(SSLConnectionContext.java:187) at org.glassfish.grizzly.ssl.SSLUtils.handshakeUnwrap(SSLUtils.java:263) at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:634) at org.glassfish.grizzly.ssl.SSLFilter.doHandshakeStep(SSLFilter.java:330) at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:583) at org.glassfish.grizzly.ssl.SSLBaseFilter.handleRead(SSLBaseFilter.java:304) at com.ning.http.client.providers.grizzly.SwitchingSSLFilter.handleRead(SwitchingSSLFilter.java:74) at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200) at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132) at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111) at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536) at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.run0(FlowWorkManagerIOStrategy.java:134) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.access$100(FlowWorkManagerIOStrategy.java:31) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy$WorkerThreadRunnable.run(FlowWorkManagerIOStrategy.java:157) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571) at java.lang.Thread.run(Thread.java:745) ********************************************************************************

    MuleSoft JIRA | 1 year ago | Gabriel Dimech
    javax.net.ssl.SSLException: Received fatal alert: handshake_failure
  2. 0

    When consuming an HTTPS service using the requester in 3.7.0, 3.7.1, Mule fails to connect to the remote server. The same configuration works in 3.6.1. It seems like in 3.6.1, the same error is thrown when the attribute 'protocol="HTTPS"' is omitted. In order to replicate the issue: 1) run and invoke the attached app MULE-8914.zip on http://localhost:8081/test 2) switching to Mule 3.6.1 will not replicate the issue. Stack trace shows: ERROR 2015-10-16 18:26:17,341 [[test-http-1].HTTP_Listener_Configuration.worker.01] org.mule.exception.DefaultMessagingExceptionStrategy: ******************************************************************************** Message : Error sending HTTP request. Message payload is of type: BufferInputStream Type : org.mule.api.MessagingException Code : MULE_ERROR--2 Payload : org.glassfish.grizzly.utils.BufferInputStream@3028c202 JavaDoc : http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html ******************************************************************************** Exception stack is: 1. Received fatal alert: handshake_failure (javax.net.ssl.SSLException) sun.security.ssl.Alerts:208 (http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/net/ssl/SSLException.html) 2. javax.net.ssl.SSLException: Received fatal alert: handshake_failure (java.util.concurrent.ExecutionException) org.glassfish.grizzly.impl.SafeFutureImpl$Sync:349 (null) 3. java.util.concurrent.ExecutionException: javax.net.ssl.SSLException: Received fatal alert: handshake_failure (java.io.IOException) org.mule.module.http.internal.request.grizzly.GrizzlyHttpClient:234 (null) 4. Error sending HTTP request. Message payload is of type: BufferInputStream (org.mule.api.MessagingException) org.mule.module.http.internal.request.DefaultHttpRequester:287 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html) ******************************************************************************** Root Exception stack trace: javax.net.ssl.SSLException: Received fatal alert: handshake_failure at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1639) at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1607) at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1776) at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1068) at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:890) at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:764) at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624) at org.glassfish.grizzly.ssl.SSLConnectionContext.unwrap(SSLConnectionContext.java:187) at org.glassfish.grizzly.ssl.SSLUtils.handshakeUnwrap(SSLUtils.java:263) at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:634) at org.glassfish.grizzly.ssl.SSLFilter.doHandshakeStep(SSLFilter.java:330) at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:583) at org.glassfish.grizzly.ssl.SSLBaseFilter.handleRead(SSLBaseFilter.java:304) at com.ning.http.client.providers.grizzly.SwitchingSSLFilter.handleRead(SwitchingSSLFilter.java:74) at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200) at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132) at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111) at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536) at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.run0(FlowWorkManagerIOStrategy.java:134) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.access$100(FlowWorkManagerIOStrategy.java:31) at org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy$WorkerThreadRunnable.run(FlowWorkManagerIOStrategy.java:157) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571) at java.lang.Thread.run(Thread.java:745) ********************************************************************************

    MuleSoft JIRA | 1 year ago | Gabriel Dimech
    javax.net.ssl.SSLException: Received fatal alert: handshake_failure
  3. 0

    Got handshake_failure using java/netty, but succeeded with curl for the same https url

    Stack Overflow | 2 years ago
    io.netty.handler.codec.DecoderException: javax.net.ssl.SSLException: Received fatal alert: handshake_failure
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    GitHub comment 377#192286247

    GitHub | 9 months ago | veselinandreev
    javax.net.ssl.SSLException: Received fatal alert: handshake_failure
  6. 0

    Weblogic 10.3.5 TLS 1.1 and 1.2

    Oracle Community | 1 year ago | 2886224
    com.sforce.ws.ConnectionException: Failed to send request to https://tls1test.salesforce.com/services/Soap/c/32.0

    28 unregistered visitors
    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. javax.net.ssl.SSLException

      Received fatal alert: handshake_failure

      at sun.security.ssl.Alerts.getSSLException()
    2. Java JSSE
      SSLEngineImpl.unwrap
      1. sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
      2. sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1639)
      3. sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1607)
      4. sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1776)
      5. sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1068)
      6. sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:890)
      7. sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:764)
      7 frames
    3. Java RT
      SSLEngine.unwrap
      1. javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
      1 frame
    4. Grizzly
      SSLBaseFilter.handleRead
      1. org.glassfish.grizzly.ssl.SSLConnectionContext.unwrap(SSLConnectionContext.java:187)
      2. org.glassfish.grizzly.ssl.SSLUtils.handshakeUnwrap(SSLUtils.java:263)
      3. org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:634)
      4. org.glassfish.grizzly.ssl.SSLFilter.doHandshakeStep(SSLFilter.java:330)
      5. org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:583)
      6. org.glassfish.grizzly.ssl.SSLBaseFilter.handleRead(SSLBaseFilter.java:304)
      6 frames
    5. Asynchronous Http Client
      SwitchingSSLFilter.handleRead
      1. com.ning.http.client.providers.grizzly.SwitchingSSLFilter.handleRead(SwitchingSSLFilter.java:74)
      1 frame
    6. Grizzly
      AbstractIOStrategy.fireIOEvent
      1. org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
      2. org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
      3. org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
      4. org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
      5. org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
      6. org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
      7. org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
      8. org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
      8 frames
    7. Mule HTTP Connector
      FlowWorkManagerIOStrategy$WorkerThreadRunnable.run
      1. org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.run0(FlowWorkManagerIOStrategy.java:134)
      2. org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy.access$100(FlowWorkManagerIOStrategy.java:31)
      3. org.mule.module.http.internal.request.grizzly.FlowWorkManagerIOStrategy$WorkerThreadRunnable.run(FlowWorkManagerIOStrategy.java:157)
      3 frames
    8. Grizzly
      AbstractThreadPool$Worker.run
      1. org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
      2. org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
      2 frames
    9. Java RT
      Thread.run
      1. java.lang.Thread.run(Thread.java:745)
      1 frame