我在通过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
我有同样的问题,它是由块发送数据(Chunked transfer encoding或chunk streaming)引起的
在我的例子中是HTTP Post,修复程序在标题中发送内容长度。
但情况可能是接收器不准备以块的形式读取数据,从而超时等待数据的EOF。