通过WebSocket发送数据时出现TimeoutException

问题描述 投票:0回答:1

我在通过WebSocket(Tomcat8 JSR-356)发送数据时遇到java.util.concurrent.TimeoutException。请参考下面给出的跟踪

java.io.IOException: java.util.concurrent.TimeoutException
    at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendPartialString(WsRemoteEndpointImplBase.java:258)
    at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendString(WsRemoteEndpointImplBase.java:193)
    at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:37)

除了与网络延迟相关的问题之外,我想知道在任何情况下我们都会遇到此异常

注意:我随机地面对这个例外。 Tomcat版本是8.0.20

java websocket tomcat8 java-websocket jsr356
1个回答
0
投票

我有同样的问题,它是由块发送数据(Chunked transfer encoding或chunk streaming)引起的

在我的例子中是HTTP Post,修复程序在标题中发送内容长度。

但情况可能是接收器不准备以块的形式读取数据,从而超时等待数据的EOF。

© www.soinside.com 2019 - 2024. All rights reserved.