Spring heartbeat websocket Broken pipe IOException

Im using spring-boot-starter-websocket with spring 1.5.3.RELEASE boot and I get tons of logs when sockjs tries to complete the Heartbeat task. Somehow the connection is lost. this article talks about closing (according to JIRA ), but I'm still with the same kind of problem

Here is my configuration

@Configuration @EnableWebSocketMessageBroker public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer { @Bean WebSocketHandler getWsHandler() { return new WebSocketHandler(); } @Override public void configureMessageBroker(MessageBrokerRegistry config) { config.enableSimpleBroker("/topic"); } @Override public void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint("/ws").setAllowedOrigins("*").withSockJS(); } } 

Here are the magazines

2017-07-11 15: 10: 23.753 INFO 7574 --- [MessageBroker-4] o.apache.coyote.http11.Http11Processor: An error occurred while processing in the non-container stream. The connection will close immediately

java.io.IOException: Broken tube on sun.nio.ch.FileDispatcherImpl.write0 (native method) ~ [na: 1.8.0] at sun.nio.ch.SocketDispatcher.write (SocketDispatcher.java:47) ~ [na : 1.8.0] in sun.nio.ch.IOUtil.writeFromNativeBuffer (IOUtil.java:93) ~ [na: 1.8.0] on sun.nio.ch.IOUtil.write (IOUtil.java:65) ~ [na : 1.8.0] at sun.nio.ch.SocketChannelImpl.write (SocketChannelImpl.java:466) ~ [na: 1.8.0] in org.apache.tomcat.util.net.NioChannel.write (NioChannel.java:134 ) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.tomcat.util.net.NioBlockingSelector.write (NioBlockingSelector.java:101) ~ [tomcat-embed-core-8.5. 14.jar: 8.5.14] at org.apache.tomcat.util.net.NioSelectorPool.write (NioSelectorPool.java:157) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org. apache.tomcat.util.net.NioEndpoint $ NioSocketWrapper.doWrite (NioEndpoint.java:1259) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.tomcat.util.net.SocketWrapperBase .doWrite (SocketWrapperBase.java: 670) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.tomcat.util.net.SocketWrapperBase.flushBlocking (SocketWrapperBase.java:607) ~ [tomcat-embed-core-8.5 .14.jar: 8.5.14] at org.apache.tomcat.util.net.SocketWrapperBase.flush (SocketWrapperBase.java∗97) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org .apache.coyote.http11.Http11OutputBuffer.flushBuffer (Http11OutputBuffer.java► 81) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.coyote.http11.Http11OutputBuffer.flush. java: 272) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.coyote.http11.Http11Processor.flush (Http11Processor.java:1506) ~ [tomcat-embed-core-8.5 .14.jar: 8.5.14] at org.apache.coyote.AbstractProcessor.action (AbstractProcessor.java:279) ~ [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.coyote .Response.action (Response.java:172) [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.catalina.connector.OutputBuffer.doFlush (OutputBuffer.javahaps17) [tomcat- embed-core-8.5.14.jar: 8.5.14] at o rg.apache.catalina.connector.OutputBuffer.flush (OutputBuffer.java:284) [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.catalina.connector.Response.flushBuffer (Response. java: 541) [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.apache.catalina.connector.ResponseFacade.flushBuffer (ResponseFacade.javahaps12) [tomcat-embed-core-8.5.14 .jar: 8.5.14] at javax.servlet.ServletResponseWrapper.flushBuffer (ServletResponseWrapper.java:176) [tomcat-embed-core-8.5.14.jar: 8.5.14] at javax.servlet.ServletResponseWrapper.flushBuffer (ServletRespon java: 176) [tomcat-embed-core-8.5.14.jar: 8.5.14] at org.springframework.security.web.util.OnCommittedResponseWrapper.flushBuffer (OnCommittedResponseWrapper.java:159) [spring -security-web-4.2 .2.RELEASE.jar: 4.2.2.RELEASE] in org.springframework.http.server.ServletServerHttpResponse.flush (ServletServerHttpResponse.java:96) [spring -web-4.3.8.RELEASE.jar: 4.3.8.RELEASE ] in org.springframework.web.socket.sockjs.transport.session.AbstractHttpSockJsSessio n.writeFrameInternal (AbstractHttpSockJsSession.java{50) [spring -websocket-4.3.8.RELEASE.jar: 4.3.8.RELEASE] in org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession.writeFrame (AbstractSockJsession. java: 322) [spring -websocket-4.3.8.RELEASE.jar: 4.3.8.RELEASE] in org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession.sendHeartbeat (AbstractSockJsSession.java:255) [spring -websocket-4.3.8.RELEASE.jar: 4.3.8.RELEASE] in org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession $ HeartbeatTask.run (AbstractSockJsSession.java:456) [spring -websocket-4.3 .8.RELEASE.jar: 4.3.8.RELEASE] in org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run (DelegatingErrorHandlingRunnable.java:54) [spring -context-4.3.8.RELEASE.jar: 4.3.8.RELEASE ] in java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java UP11) [na: 1.8.0] in java.util.concurrent.FutureTask.run (FutureTask.java:266) [na: 1.8.0 ] in java.util.con current.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201 (ScheduledThreadPoolExecutor.java:180) [na: 1.8.0] in java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run (ScheduledThreadPoolExecutor.java:ava .util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) [na: 1.8.0] in java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) [na: 1.8.0] in java .lang.Thread.run (Thread.java:744) [na: 1.8.0]}

+5
source share

Source: https://habr.com/ru/post/1269704/


All Articles