1

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

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

4

1 回答 1

1

我有同样的问题,它是由块发送数据引起的(块传输编码块流

在我的情况下是 HTTP Post,修复是在标头中发送内容长度。

但可能是接收器没有准备好以块的形式读取数据,因此在等待数据 EOF 时超时。

于 2019-03-05T09:19:44.787 回答