You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Ernesto Reinaldo Barreiro (JIRA)" <ji...@apache.org> on 2019/03/06 08:45:00 UTC
[jira] [Created] (WICKET-6643) exception in web-sockets pluss
tomcat 8
Ernesto Reinaldo Barreiro created WICKET-6643:
-------------------------------------------------
Summary: exception in web-sockets pluss tomcat 8
Key: WICKET-6643
URL: https://issues.apache.org/jira/browse/WICKET-6643
Project: Wicket
Issue Type: Improvement
Affects Versions: 7.12.0
Environment: tomcat 8
Reporter: Ernesto Reinaldo Barreiro
In our log files we get following stacktrace
09:41:11.673 [http-nio-8080-exec-10] ERROR com.semedy.WebSocketMessage - Could not send notification java.io.IOException: java.io.IOException: Broken pipe at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:315) ~[tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:250) ~[tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendString(WsRemoteEndpointImplBase.java:191) ~[tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:37) ~[tomcat-websocket.jar:8.5.38] at org.apache.wicket.protocol.ws.javax.JavaxWebSocketConnection.sendMessage(JavaxWebSocketConnection.java:81) ~[wicket-native-websocket-javax-7.12.0.jar:7.12.0] at com.semedy.WebSocketMessage.privateSendNotificationTo(WebSocketMessage.java:83) [classes/:?] at com.semedy.WebSocketMessage.sendNotificationToAllSessions(WebSocketMessage.java:70) [classes/:?] at com.semedy.BasePage$1.onMessage(BasePage.java:32) [classes/:?] at org.apache.wicket.protocol.ws.api.WebSocketBehavior.onEvent(WebSocketBehavior.java:64) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.settings.FrameworkSettings.dispatchEvent(FrameworkSettings.java:147) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.ComponentEventSender.dispatchToComponent(ComponentEventSender.java:292) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.ComponentEventSender.breadth(ComponentEventSender.java:149) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.ComponentEventSender.send(ComponentEventSender.java:68) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.Component.send(Component.java:4575) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.api.WebSocketMessageBroadcastHandler$1.run(WebSocketMessageBroadcastHandler.java:74) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.WebSocketSettings$SameThreadExecutor.run(WebSocketSettings.java:362) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.api.WebSocketMessageBroadcastHandler.respond(WebSocketMessageBroadcastHandler.java:97) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) [wicket-request-7.12.0.jar:7.12.0] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293) [wicket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:263) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.onMessage(AbstractWebSocketProcessor.java:148) [wicket-native-websocket-core-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.javax.JavaxWebSocketProcessor$StringMessageHandler.onMessage(JavaxWebSocketProcessor.java:65) [wicket-native-websocket-javax-7.12.0.jar:7.12.0] at org.apache.wicket.protocol.ws.javax.JavaxWebSocketProcessor$StringMessageHandler.onMessage(JavaxWebSocketProcessor.java:60) [wicket-native-websocket-javax-7.12.0.jar:7.12.0] at org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:394) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:119) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:495) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:294) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:82) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151) [tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148) [tomcat-websocket.jar:8.5.38] at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) [tomcat-coyote.jar:8.5.38] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53) [tomcat-coyote.jar:8.5.38] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806) [tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) [tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-coyote.jar:8.5.38] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_201] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_201] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.5.38] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201] Caused by: java.io.IOException: Broken pipe at sun.nio.ch.FileDispatcherImpl.write0(Native Method) ~[?:1.8.0_201] at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) ~[?:1.8.0_201] at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93) ~[?:1.8.0_201] at sun.nio.ch.IOUtil.write(IOUtil.java:65) ~[?:1.8.0_201] at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471) ~[?:1.8.0_201] at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:134) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:101) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:157) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.doWrite(NioEndpoint.java:1306) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.SocketWrapperBase.doWrite(SocketWrapperBase.java:726) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.SocketWrapperBase.flushBlocking(SocketWrapperBase.java:679) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.util.net.SocketWrapperBase.flush(SocketWrapperBase.java:669) ~[tomcat-coyote.jar:8.5.38] at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.doWrite(WsRemoteEndpointImplServer.java:96) ~[tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:494) ~[tomcat-websocket.jar:8.5.38] at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:309) ~[tomcat-websocket.jar:8.5.38] ... 43 more
I don't know if it is really a wicket error or tomcat (or how we are using this in our application). It seems to have no side effect on how we are using websockets in our application. But it would be nice to get rid of stack trace on logs. I managed to reproduce this in quick-start.
To reproduce just reload the home page (maybe more than once).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)