Author: markt Date: Sun Feb 22 18:49:56 2015 New Revision: 1661521 URL: http://svn.apache.org/r1661521 Log: Now need to close both streams
Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java?rev=1661521&r1=1661520&r2=1661521&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java Sun Feb 22 18:49:56 2015 @@ -122,7 +122,7 @@ public class WsHttpUpgradeHandler implem t.setContextClassLoader(applicationClassLoader); try { WsRemoteEndpointImplServer wsRemoteEndpointServer = - new WsRemoteEndpointImplServer(sos, webSocketContainer); + new WsRemoteEndpointImplServer(sis, sos, webSocketContainer); wsSession = new WsSession(ep, wsRemoteEndpointServer, webSocketContainer, handshakeRequest.getRequestURI(), handshakeRequest.getParameterMap(), Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java?rev=1661521&r1=1661520&r2=1661521&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java Sun Feb 22 18:49:56 2015 @@ -24,6 +24,7 @@ import java.util.Queue; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.ExecutorService; +import javax.servlet.ServletInputStream; import javax.servlet.ServletOutputStream; import javax.websocket.SendHandler; import javax.websocket.SendResult; @@ -49,6 +50,7 @@ public class WsRemoteEndpointImplServer private static final Queue<OnResultRunnable> onResultRunnables = new ConcurrentLinkedQueue<>(); + private final ServletInputStream sis; private final ServletOutputStream sos; private final WsWriteTimeout wsWriteTimeout; private final ExecutorService executorService; @@ -59,7 +61,9 @@ public class WsRemoteEndpointImplServer private volatile boolean close; - public WsRemoteEndpointImplServer(ServletOutputStream sos, WsServerContainer serverContainer) { + public WsRemoteEndpointImplServer(ServletInputStream sis, ServletOutputStream sos, + WsServerContainer serverContainer) { + this.sis = sis; this.sos = sos; this.wsWriteTimeout = serverContainer.getTimeout(); this.executorService = serverContainer.getExecutorService(); @@ -147,6 +151,13 @@ public class WsRemoteEndpointImplServer } catch (IOException e) { if (log.isInfoEnabled()) { log.info(sm.getString("wsRemoteEndpointServer.closeFailed"), e); + } + } + try { + sis.close(); + } catch (IOException e) { + if (log.isInfoEnabled()) { + log.info(sm.getString("wsRemoteEndpointServer.closeFailed"), e); } } wsWriteTimeout.unregister(this); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org