我写了一个spring sse应用程序,但在收到服务器的第一个数据后,sse发射器连接被关闭了。我搜索并分析了很多,并且知道它是关闭连接的浏览器(在我的情况下是firefox)。这就是我在应用程序日志中记录这个日志的原因
org.eclipse.jetty.io.EofException
at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:292)
at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:429)
at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:322)
at org.eclipse.jetty.io.AbstractEndPoint.write(AbstractEndPoint.java:372)
at org.eclipse.jetty.server.HttpConnection$SendCallback.process(HttpConnection.java:750)
at org.eclipse.jetty.util.IteratingCallback.processing(IteratingCallback.java:241)
at org.eclipse.jetty.util.IteratingCallback.iterate(IteratingCallback.java:224)
Caused by: java.io.IOException: An established connection was aborted by the software in your host machine
at sun.nio.ch.SocketDispatcher.writev0(Native Method)
at sun.nio.ch.SocketDispatcher.writev(SocketDispatcher.java:55)
at sun.nio.ch.IOUtil.write(IOUtil.java:148)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:503)
at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:272)
... 29 more
这发生在第E1.send(value,MediaType.APPLICATION_JSON);
行
据我所知,由于E1已关闭,因此该行抛出该异常,我无法理解为什么浏览器的行为如此,即在获取第一个数据后关闭exisitng连接。我在网上搜索了很多这个问题,但找不到任何解决方案。
请帮忙。我这个问题已经困了两个星期了。感谢。
答案 0 :(得分:0)
我刚刚在WEB-INF中放置了html页面(包含javascript代码),并且它成功运行。以前我在war文件之外运行它并得到上述错误。现在它完美无缺。