Article - CS345258
Integration Runtime service fails to start with error "java.util.concurrent.TimeoutException: timeout waiting for websocket handshake to complete" in ThingWorx Navigate
Modified: 18-Nov-2025
Applies To
- Windchill Navigate (formerly ThingWorx Navigate) 9.0 to 9.7
- ThingWorx Platform 9.0 to 9.7
Description
- Error occurs during the initialization phase of the Integration Runtime service
- ThingWorx Integration Runtime (IR) is not connected
- Integration connectors show a failure to connect
- IntegrationRuntime-XXXXX.log reports following error:
INFO c.t.i.Entrypoint - Integration Engine Deployed [Client-EndpointMonitor-1] ERROR c.t.c.c.c.n.NettyClientConnectionFactory - Exception occurred while connecting to server java.util.concurrent.TimeoutException: timeout waiting for websocket handshake to complete at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory$HandshakeCompletionNotifier.await(NettyClientConnectionFactory.java:693) at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory.createConnection(NettyClientConnectionFactory.java:398) at com.thingworx.communications.client.endpoints.ClientCommunicationEndpoint.refillConnections(ClientCommunicationEndpoint.java:230) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.dutyCycleOn(ConnectivityMonitorTask.java:159) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.run(ConnectivityMonitorTask.java:306) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) [NettyClient-NIO-1] ERROR c.t.c.c.c.n.ThingworxClientConnectionHandler - WebSocket exception caught!, closing connection! javax.net.ssl.SSLException: SSLEngine closed already at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:829) at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:792) at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:773) at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:1894) at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1862) at io.netty.handler.ssl.SslHandler.close(SslHandler.java:724)
[Client-EndpointMonitor-700] ERROR c.t.c.c.c.n.NettyClientConnectionFactory - Exception occurred while connecting to server java.util.concurrent.TimeoutException: timeout waiting for websocket handshake to complete at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory$HandshakeCompletionNotifier.await(NettyClientConnectionFactory.java:714) at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory.createConnection(NettyClientConnectionFactory.java:405) at com.thingworx.communications.client.endpoints.ClientCommunicationEndpoint.refillConnections(ClientCommunicationEndpoint.java:230) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.dutyCycleOn(ConnectivityMonitorTask.java:159) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.run(ConnectivityMonitorTask.java:318) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) [Client-EndpointMonitor-700] INFO c.t.c.c.c.n.NettyClientConnectionFactory - forcing underlying tcp channel closed [is open: true, is active: false] [Client-EndpointMonitor-700] ERROR c.t.c.c.e.ClientCommunicationEndpoint - Refilling connections on [endpoint 6309, uri: <xxx://xxxx.com:8443/Thingworx/WS>] failed : timeout waiting for websocket handshake to complete [Client-EndpointMonitor-700] ERROR c.t.c.c.e.ClientCommunicationEndpoint - Exception refilling connections was: java.util.concurrent.TimeoutException: timeout waiting for websocket handshake to complete at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory$HandshakeCompletionNotifier.await(NettyClientConnectionFactory.java:714) at com.thingworx.communications.client.connection.netty.NettyClientConnectionFactory.createConnection(NettyClientConnectionFactory.java:405) at com.thingworx.communications.client.endpoints.ClientCommunicationEndpoint.refillConnections(ClientCommunicationEndpoint.java:230) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.dutyCycleOn(ConnectivityMonitorTask.java:159) at com.thingworx.communications.common.endpoints.monitor.ConnectivityMonitorTask.run(ConnectivityMonitorTask.java:318) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829)
This is a printer-friendly version of Article 345258 and may be out of date. For the latest version click CS345258