2013/3/21  <ma...@apache.org>:
> Author: markt
> Date: Thu Mar 21 13:09:41 2013
> New Revision: 1459288
>
> URL: http://svn.apache.org/r1459288
> Log:
> Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54734
> Partial fix
> javax.servlet.http.WebConnection needs to extend AutoCloseable
> Based on a patch by Nick Williams
>
> Modified:
>     tomcat/trunk/java/javax/servlet/http/WebConnection.java
>     tomcat/trunk/java/org/apache/coyote/http11/upgrade/AbstractProcessor.java
>     
> tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties
>     
> tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.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=1459288&r1=1459287&r2=1459288&view=diff
> ==============================================================================
> --- 
> tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java
>  (original)
> +++ 
> tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java
>  Thu Mar 21 13:09:41 2013
> @@ -32,6 +32,8 @@ import javax.websocket.DeploymentExcepti
>  import javax.websocket.Endpoint;
>  import javax.websocket.EndpointConfig;
>
> +import org.apache.juli.logging.Log;
> +import org.apache.juli.logging.LogFactory;
>  import org.apache.tomcat.util.res.StringManager;
>  import org.apache.tomcat.websocket.WsIOException;
>  import org.apache.tomcat.websocket.WsSession;
> @@ -41,6 +43,11 @@ import org.apache.tomcat.websocket.WsSes
>   */
>  public class WsHttpUpgradeHandler implements HttpUpgradeHandler {
>
> +    private static final Log log =
> +            LogFactory.getLog(WsHttpUpgradeHandler.class);
> +    private static final StringManager sm =
> +            StringManager.getManager(Constants.PACKAGE_NAME);
> +
>      private final ClassLoader applicationClassLoader;
>
>      private Endpoint ep;
> @@ -50,12 +57,10 @@ public class WsHttpUpgradeHandler implem
>      private String subProtocol;
>      private Map<String,String> pathParameters;
>      private boolean secure;
> +    WebConnection connection;
>

I think the above field was supposed to be "private". It is not used
anywhere outside of this class in this commit.

>      private WsSession wsSession;
>
> -    private static final StringManager sm =
> -            StringManager.getManager(Constants.PACKAGE_NAME);
> -
>
>      public WsHttpUpgradeHandler() {
>          applicationClassLoader = 
> Thread.currentThread().getContextClassLoader();
> @@ -83,6 +88,8 @@ public class WsHttpUpgradeHandler implem
>                      sm.getString("wsHttpUpgradeHandler.noPreInit"));
>          }
>
> +        this.connection = connection;
> +
>          ServletInputStream sis;
>          ServletOutputStream sos;
>          try {
> @@ -126,7 +133,11 @@ public class WsHttpUpgradeHandler implem
>
>      @Override
>      public void destroy() {
> -        // NO-OP
> +        try {
> +            connection.close();
> +        } catch (Exception e) {
> +            log.error(sm.getString("wsHttpUpgradeHandler.destroyFailed"), e);
> +        }
>      }
>
>

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to