2016-12-17 7 views
1

Я использую websocket на основе JAVA, но я получаю сообщение об ошибке, которое я не понимаю.java websocket EOFException возникает

Когда сервер получает RuntimeException или NullPointerException и т. Д., Вызывается метод onError.

После этого (законченный onError метод), метод onError вызывается снова. После второго раза EOFException происходит непрерывно.

У вас есть идеи, почему EOFException происходит после onError метода?

Вот мой журнал ошибок:

java.io.EOFException 
    at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1267) 
    at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.isReadyForRead(NioEndpoint.java:1176) 
    at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:58) 
    at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148) 
    at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) 
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53) 
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:788) 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1485) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    at java.lang.Thread.run(Thread.java:745) 

спасибо.

+0

Поскольку равноправные было закрыто соединение, почти наверняка из-за предшествующей ошибки, что и следовало исследовать, а не этого. – EJP

ответ

0

Я была такая же проблема с вами, если вы используете ngingx для перенаправления запросов WebSocket, вы должны увеличить значение proxy_read_timeout в противном случае соединение будет закрыто через 60 секунд (по умолчанию)