From ec7b26834715ec4a5be677a2848b2d60e2ec1629 Mon Sep 17 00:00:00 2001 From: Greg Wilkins Date: Tue, 28 May 2019 11:53:15 +0200 Subject: [PATCH] Some fixes for running cometd6 on jetty-10 --- .../eclipse/jetty/servlet/FilterMapping.java | 7 ++-- .../server/WebSocketUpgradeFilter.java | 36 +++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 jetty-websocket/jetty-websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java diff --git a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java index c6cc1da109b6..2cc2a924a9ca 100644 --- a/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java +++ b/jetty-servlet/src/main/java/org/eclipse/jetty/servlet/FilterMapping.java @@ -114,7 +114,7 @@ public static DispatcherType dispatch(int type) /* ------------------------------------------------------------ */ private int _dispatches=DEFAULT; private String _filterName; - private transient FilterHolder _holder; + private FilterHolder _holder; private String[] _pathSpecs; private String[] _servletNames; @@ -148,8 +148,11 @@ boolean appliesTo(String path, int type) */ boolean appliesTo(int type) { + FilterHolder holder = _holder; + if (_holder==null) + return false; if (_dispatches==0) - return type==REQUEST || type==ASYNC && _holder.isAsyncSupported(); + return type==REQUEST || type==ASYNC && holder.isAsyncSupported(); return (_dispatches&type)!=0; } diff --git a/jetty-websocket/jetty-websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java b/jetty-websocket/jetty-websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java new file mode 100644 index 000000000000..f24ae137c48a --- /dev/null +++ b/jetty-websocket/jetty-websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.java @@ -0,0 +1,36 @@ +// +// ======================================================================== +// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd. +// ------------------------------------------------------------------------ +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// and Apache License v2.0 which accompanies this distribution. +// +// The Eclipse Public License is available at +// http://www.eclipse.org/legal/epl-v10.html +// +// The Apache License v2.0 is available at +// http://www.opensource.org/licenses/apache2.0.php +// +// You may elect to redistribute this code under either of these licenses. +// ======================================================================== +// + +package org.eclipse.jetty.websocket.server; + +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; + +/** + * @Deprecated Moved to #org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter + */ +@Deprecated +public class WebSocketUpgradeFilter extends org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter +{ + @Override + public void init(FilterConfig config) throws ServletException + { + super.init(config); + config.getServletContext().log("org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter is deprecated. Use org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter"); + } +}