diff --git a/hbase-http/pom.xml b/hbase-http/pom.xml index 1cdc45364cd6..24e7eca4890d 100644 --- a/hbase-http/pom.xml +++ b/hbase-http/pom.xml @@ -163,40 +163,12 @@ true - org.eclipse.jetty - jetty-server - - - org.eclipse.jetty - jetty-servlet - - - org.eclipse.jetty - jetty-util - - - org.eclipse.jetty - jetty-util-ajax - - - org.eclipse.jetty - jetty-webapp - - - org.eclipse.jetty - jetty-http - - - org.eclipse.jetty - jetty-security - - - org.glassfish.jersey.core - jersey-server + org.apache.hbase.thirdparty + hbase-shaded-jetty - org.glassfish.jersey.containers - jersey-container-servlet-core + org.apache.hbase.thirdparty + hbase-shaded-jersey @@ -285,6 +257,18 @@ + + build-with-jdk11 + + [1.11,) + + + + javax.xml.bind + jaxb-api + + + apache-release diff --git a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/AdminAuthorizedServlet.java b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/AdminAuthorizedServlet.java index bd8570e245be..3c9d7e6015ca 100644 --- a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/AdminAuthorizedServlet.java +++ b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/AdminAuthorizedServlet.java @@ -25,7 +25,7 @@ import org.apache.yetus.audience.InterfaceAudience; import org.apache.yetus.audience.InterfaceStability; -import org.eclipse.jetty.servlet.DefaultServlet; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.DefaultServlet; /** * General servlet which is admin-authorized. diff --git a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpRequestLog.java b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpRequestLog.java index 0eb66a7c72c7..38fe5855d787 100644 --- a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpRequestLog.java +++ b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpRequestLog.java @@ -18,8 +18,8 @@ package org.apache.hadoop.hbase.http; import org.apache.yetus.audience.InterfaceAudience; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.Slf4jRequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.RequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Slf4jRequestLog; import org.apache.hbase.thirdparty.com.google.common.collect.ImmutableMap; diff --git a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java index 395c9253ee2a..faa84cc8151f 100644 --- a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java +++ b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServer.java @@ -66,30 +66,30 @@ import org.apache.hadoop.util.StringUtils; import org.apache.yetus.audience.InterfaceAudience; import org.apache.yetus.audience.InterfaceStability; -import org.eclipse.jetty.http.HttpVersion; -import org.eclipse.jetty.server.Handler; -import org.eclipse.jetty.server.HttpConfiguration; -import org.eclipse.jetty.server.HttpConnectionFactory; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.SecureRequestCustomizer; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.server.SslConnectionFactory; -import org.eclipse.jetty.server.handler.ContextHandlerCollection; -import org.eclipse.jetty.server.handler.HandlerCollection; -import org.eclipse.jetty.server.handler.RequestLogHandler; -import org.eclipse.jetty.server.handler.gzip.GzipHandler; -import org.eclipse.jetty.servlet.DefaultServlet; -import org.eclipse.jetty.servlet.FilterHolder; -import org.eclipse.jetty.servlet.FilterMapping; -import org.eclipse.jetty.servlet.ServletContextHandler; -import org.eclipse.jetty.servlet.ServletHolder; -import org.eclipse.jetty.util.MultiException; -import org.eclipse.jetty.util.ssl.SslContextFactory; -import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.eclipse.jetty.webapp.WebAppContext; -import org.glassfish.jersey.server.ResourceConfig; -import org.glassfish.jersey.servlet.ServletContainer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.http.HttpVersion; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Handler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConfiguration; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.RequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SecureRequestCustomizer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Server; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.ServerConnector; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SslConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.handler.ContextHandlerCollection; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.handler.HandlerCollection; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.handler.RequestLogHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.handler.gzip.GzipHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.DefaultServlet; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterHolder; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterMapping; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.MultiException; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ssl.SslContextFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.thread.QueuedThreadPool; +import org.apache.hbase.thirdparty.org.eclipse.jetty.webapp.WebAppContext; +import org.apache.hbase.thirdparty.org.glassfish.jersey.server.ResourceConfig; +import org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -888,10 +888,8 @@ void addInternalServlet(String name, String pathSpec, fmap.setFilterName(AdminAuthorizedFilter.class.getSimpleName()); webAppContext.getServletHandler().addFilter(filter, fmap); } - webAppContext.getSessionHandler().getSessionManager(). - getSessionCookieConfig().setHttpOnly(true); - webAppContext.getSessionHandler().getSessionManager(). - getSessionCookieConfig().setSecure(true); + webAppContext.getSessionHandler().getSessionCookieConfig().setHttpOnly(true); + webAppContext.getSessionHandler().getSessionCookieConfig().setSecure(true); webAppContext.addServlet(holder, pathSpec); } diff --git a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServerUtil.java b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServerUtil.java index e41daf310792..ce43c2b3c881 100644 --- a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServerUtil.java +++ b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/HttpServerUtil.java @@ -18,10 +18,10 @@ package org.apache.hadoop.hbase.http; import org.apache.yetus.audience.InterfaceAudience; -import org.eclipse.jetty.security.ConstraintMapping; -import org.eclipse.jetty.security.ConstraintSecurityHandler; -import org.eclipse.jetty.servlet.ServletContextHandler; -import org.eclipse.jetty.util.security.Constraint; +import org.apache.hbase.thirdparty.org.eclipse.jetty.security.ConstraintMapping; +import org.apache.hbase.thirdparty.org.eclipse.jetty.security.ConstraintSecurityHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.security.Constraint; /** * HttpServer utility. diff --git a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/ProfileOutputServlet.java b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/ProfileOutputServlet.java index aa3455e684f8..3f9bc1093c8c 100644 --- a/hbase-http/src/main/java/org/apache/hadoop/hbase/http/ProfileOutputServlet.java +++ b/hbase-http/src/main/java/org/apache/hadoop/hbase/http/ProfileOutputServlet.java @@ -26,7 +26,7 @@ import javax.servlet.http.HttpServletResponse; import org.apache.yetus.audience.InterfaceAudience; -import org.eclipse.jetty.servlet.DefaultServlet; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.DefaultServlet; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/HttpServerFunctionalTest.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/HttpServerFunctionalTest.java index 1be7297536eb..7f1223980e3d 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/HttpServerFunctionalTest.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/HttpServerFunctionalTest.java @@ -46,7 +46,7 @@ public class HttpServerFunctionalTest extends Assert { /** JVM property for the webapp test dir : {@value} */ public static final String TEST_BUILD_WEBAPPS = "test.build.webapps"; /** expected location of the test.build.webapps dir: {@value} */ - private static final String BUILD_WEBAPPS_DIR = "src/main/resources/hbase-webapps"; + private static final String BUILD_WEBAPPS_DIR = "src/test/resources/webapps"; /** name of the test webapp: {@value} */ private static final String TEST = "test"; diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpRequestLog.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpRequestLog.java index eef5e7b6538a..a1bbee6dfd9a 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpRequestLog.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpRequestLog.java @@ -23,8 +23,8 @@ import org.apache.hadoop.hbase.HBaseClassTestRule; import org.apache.hadoop.hbase.testclassification.MiscTests; import org.apache.hadoop.hbase.testclassification.SmallTests; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.Slf4jRequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.RequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Slf4jRequestLog; import org.junit.ClassRule; import org.junit.Test; import org.junit.experimental.categories.Category; diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpServer.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpServer.java index 01bc8c53ee70..d9eac11e4e12 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpServer.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestHttpServer.java @@ -61,8 +61,8 @@ import org.apache.hadoop.security.ShellBasedUnixGroupsMapping; import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.security.authorize.AccessControlList; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.util.ajax.JSON; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.ServerConnector; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ajax.JSON; import org.apache.http.HttpEntity; import org.apache.http.HttpHeaders; import org.apache.http.client.methods.CloseableHttpResponse; diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.java index 804c837178c2..1079e0016c66 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/TestProxyUserSpnegoHttpServer.java @@ -266,7 +266,8 @@ public HttpResponse run() throws Exception { if(responseCode == HttpURLConnection.HTTP_OK) { assertTrue(EntityUtils.toString(resp.getEntity()).trim().contains("a:b")); } else { - assertTrue(resp.getStatusLine().toString().contains(statusLine)); + assertTrue(resp.getStatusLine().toString().contains(statusLine) || + EntityUtils.toString(resp.getEntity()).contains(statusLine)); } } diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/conf/TestConfServlet.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/conf/TestConfServlet.java index 53e129fa8722..de87eb23b03e 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/conf/TestConfServlet.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/conf/TestConfServlet.java @@ -29,7 +29,7 @@ import org.apache.hadoop.hbase.HBaseClassTestRule; import org.apache.hadoop.hbase.testclassification.MiscTests; import org.apache.hadoop.hbase.testclassification.SmallTests; -import org.eclipse.jetty.util.ajax.JSON; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ajax.JSON; import org.junit.ClassRule; import org.junit.Test; import org.junit.experimental.categories.Category; diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/resource/JerseyResource.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/resource/JerseyResource.java index 593b1c222481..340d554357c6 100644 --- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/resource/JerseyResource.java +++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/resource/JerseyResource.java @@ -30,7 +30,7 @@ import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import org.eclipse.jetty.util.ajax.JSON; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ajax.JSON; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hbase-it/pom.xml b/hbase-it/pom.xml index 9a6107c2370c..ddd9ad389d92 100644 --- a/hbase-it/pom.xml +++ b/hbase-it/pom.xml @@ -50,6 +50,9 @@ META-INF/LICENSE + + src/test/resources + @@ -247,10 +250,6 @@ org.apache.htrace htrace-core4 - - org.glassfish.jersey.core - jersey-client - io.netty @@ -283,16 +282,6 @@ javax.servlet test - - org.eclipse.jetty - jetty-server - test - - - org.eclipse.jetty - jetty-util - test - junit junit diff --git a/hbase-it/src/test/java/org/apache/hadoop/hbase/MockHttpApiRule.java b/hbase-it/src/test/java/org/apache/hadoop/hbase/MockHttpApiRule.java index d35d8f9c5187..9fb5c3fee3a8 100644 --- a/hbase-it/src/test/java/org/apache/hadoop/hbase/MockHttpApiRule.java +++ b/hbase-it/src/test/java/org/apache/hadoop/hbase/MockHttpApiRule.java @@ -29,13 +29,13 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.ws.rs.core.MediaType; -import org.eclipse.jetty.server.Request; -import org.eclipse.jetty.server.RequestLog; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.server.Slf4jRequestLog; -import org.eclipse.jetty.server.handler.AbstractHandler; -import org.eclipse.jetty.util.RegexSet; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Request; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.RequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Server; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.ServerConnector; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Slf4jRequestLog; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.handler.AbstractHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.RegexSet; import org.junit.rules.ExternalResource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hbase-it/src/test/java/org/apache/hadoop/hbase/RESTApiClusterManager.java b/hbase-it/src/test/java/org/apache/hadoop/hbase/RESTApiClusterManager.java index 10954ce164b8..69f9dd1dbf35 100644 --- a/hbase-it/src/test/java/org/apache/hadoop/hbase/RESTApiClusterManager.java +++ b/hbase-it/src/test/java/org/apache/hadoop/hbase/RESTApiClusterManager.java @@ -47,7 +47,7 @@ import org.apache.hadoop.hbase.util.RetryCounter.RetryConfig; import org.apache.hadoop.hbase.util.RetryCounterFactory; import org.apache.hadoop.util.ReflectionUtils; -import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature; +import org.apache.hbase.thirdparty.org.glassfish.jersey.client.authentication.HttpAuthenticationFeature; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.apache.hbase.thirdparty.com.google.gson.JsonElement; diff --git a/hbase-it/src/test/resources/META-INF/services/javax.ws.rs.client.ClientBuilder b/hbase-it/src/test/resources/META-INF/services/javax.ws.rs.client.ClientBuilder new file mode 100644 index 000000000000..a7bde12c79e0 --- /dev/null +++ b/hbase-it/src/test/resources/META-INF/services/javax.ws.rs.client.ClientBuilder @@ -0,0 +1,16 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +org.apache.hbase.thirdparty.org.glassfish.jersey.client.JerseyClientBuilder diff --git a/hbase-resource-bundle/src/main/resources/supplemental-models.xml b/hbase-resource-bundle/src/main/resources/supplemental-models.xml index ec2ea8122973..21ada4c9d9a4 100644 --- a/hbase-resource-bundle/src/main/resources/supplemental-models.xml +++ b/hbase-resource-bundle/src/main/resources/supplemental-models.xml @@ -3265,4 +3265,61 @@ Copyright (c) 2007-2017 The JRuby project + + + jakarta.validation + jakarta.validation-api + Jakarta Bean Validation API + + + Apache License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + repo + + + + + + + jakarta.ws.rs + jakarta.ws.rs-api + Jakarta RESTful Web Services + + + Eclipse Public License 2.0 + https://www.eclipse.org/legal/epl-v20.html + repo + + + + + + + org.glassfish.hk2.external + jakarta.inject + Injection API (JSR 330) repackaged as OSGi bundle + + + Eclipse Public License 2.0 + https://www.eclipse.org/legal/epl-v20.html + repo + + + + + + + javax.ws.rs + javax.ws.rs-api + 2.1.1 + Java API for RESTful Web Services + + + Eclipse Public License 2.0 + https://www.eclipse.org/legal/epl-v20.html + repo + + + + diff --git a/hbase-rest/pom.xml b/hbase-rest/pom.xml index f91b2ba025c8..912c62ad11f6 100644 --- a/hbase-rest/pom.xml +++ b/hbase-rest/pom.xml @@ -278,30 +278,6 @@ com.sun.activation javax.activation - - org.eclipse.jetty - jetty-server - - - org.eclipse.jetty - jetty-servlet - - - org.eclipse.jetty - jetty-util - - - org.eclipse.jetty - jetty-http - - - org.eclipse.jetty - jetty-jmx - - - org.glassfish.jersey.containers - jersey-container-servlet-core - com.fasterxml.jackson.jaxrs jackson-jaxrs-json-provider diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java index 40354e87f093..f5267f930a48 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java @@ -46,21 +46,21 @@ import org.apache.hadoop.hbase.util.Strings; import org.apache.hadoop.hbase.util.VersionInfo; import org.apache.yetus.audience.InterfaceAudience; -import org.eclipse.jetty.http.HttpVersion; -import org.eclipse.jetty.jmx.MBeanContainer; -import org.eclipse.jetty.server.HttpConfiguration; -import org.eclipse.jetty.server.HttpConnectionFactory; -import org.eclipse.jetty.server.SecureRequestCustomizer; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.server.SslConnectionFactory; -import org.eclipse.jetty.servlet.FilterHolder; -import org.eclipse.jetty.servlet.ServletContextHandler; -import org.eclipse.jetty.servlet.ServletHolder; -import org.eclipse.jetty.util.ssl.SslContextFactory; -import org.eclipse.jetty.util.thread.QueuedThreadPool; -import org.glassfish.jersey.server.ResourceConfig; -import org.glassfish.jersey.servlet.ServletContainer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.http.HttpVersion; +import org.apache.hbase.thirdparty.org.eclipse.jetty.jmx.MBeanContainer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConfiguration; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SecureRequestCustomizer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Server; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.ServerConnector; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SslConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterHolder; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ssl.SslContextFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.thread.QueuedThreadPool; +import org.apache.hbase.thirdparty.org.glassfish.jersey.server.ResourceConfig; +import org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.apache.hbase.thirdparty.com.google.common.base.Preconditions; diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServletContainer.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServletContainer.java index 2b6a6c7f6291..0ef4fb3bc498 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServletContainer.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/RESTServletContainer.java @@ -29,8 +29,8 @@ import org.apache.hadoop.security.authorize.AuthorizationException; import org.apache.hadoop.security.authorize.ProxyUsers; import org.apache.yetus.audience.InterfaceAudience; -import org.glassfish.jersey.server.ResourceConfig; -import org.glassfish.jersey.servlet.ServletContainer; +import org.apache.hbase.thirdparty.org.glassfish.jersey.server.ResourceConfig; +import org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer; /** * REST servlet container. It is used to get the remote request user diff --git a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/VersionModel.java b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/VersionModel.java index 378d149b5ee9..307244a3f236 100644 --- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/VersionModel.java +++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/model/VersionModel.java @@ -31,7 +31,7 @@ import org.apache.hadoop.hbase.rest.RESTServlet; import org.apache.hadoop.hbase.protobuf.ProtobufUtil; import org.apache.hadoop.hbase.rest.protobuf.generated.VersionMessage.Version; -import org.glassfish.jersey.servlet.ServletContainer; +import org.apache.hbase.thirdparty.org.glassfish.jersey.servlet.ServletContainer; /** diff --git a/hbase-server/pom.xml b/hbase-server/pom.xml index f513e1d22eee..0c52396c3e76 100644 --- a/hbase-server/pom.xml +++ b/hbase-server/pom.xml @@ -367,18 +367,6 @@ test-jar test - - org.eclipse.jetty - jetty-server - - - org.eclipse.jetty - jetty-servlet - - - org.eclipse.jetty - jetty-webapp - javax.annotation:javax.annotation-api javax.activation:javax.activation-api + jakarta.ws.rs:jakarta.ws.rs-api + jakarta.annotation:jakarta.annotation-api + jakarta.validation:jakarta.validation-api + org.glassfish.hk2.external:jakarta.inject javax.annotation:javax.annotation-api javax.activation:javax.activation-api + jakarta.ws.rs:jakarta.ws.rs-api + jakarta.annotation:jakarta.annotation-api + jakarta.validation:jakarta.validation-api + org.glassfish.hk2.external:jakarta.inject javax.annotation:javax.annotation-api javax.activation:javax.activation-api + javax.activation:javax.activation-api + jakarta.ws.rs:jakarta.ws.rs-api + jakarta.annotation:jakarta.annotation-api + jakarta.validation:jakarta.validation-api + org.glassfish.hk2.external:jakarta.inject org.apache.hadoop:* @@ -152,6 +157,7 @@ org.apache.yetus:* log4j:* commons-logging:* + org.javassist:* diff --git a/hbase-thrift/pom.xml b/hbase-thrift/pom.xml index 1db984f236f5..c0406a979a64 100644 --- a/hbase-thrift/pom.xml +++ b/hbase-thrift/pom.xml @@ -212,31 +212,15 @@ org.apache.thrift libthrift - - org.eclipse.jetty - jetty-server - - - org.eclipse.jetty - jetty-servlet - junit junit test - - org.eclipse.jetty - jetty-http - javax.servlet javax.servlet-api - - org.eclipse.jetty - jetty-util - com.github.stephenc.findbugs findbugs-annotations diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java index 541438c51454..a081cf4e46b7 100644 --- a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java @@ -133,17 +133,17 @@ import org.apache.thrift.transport.TTransportFactory; import org.apache.thrift.transport.layered.TFramedTransport; import org.apache.yetus.audience.InterfaceAudience; -import org.eclipse.jetty.http.HttpVersion; -import org.eclipse.jetty.server.HttpConfiguration; -import org.eclipse.jetty.server.HttpConnectionFactory; -import org.eclipse.jetty.server.SecureRequestCustomizer; -import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.ServerConnector; -import org.eclipse.jetty.server.SslConnectionFactory; -import org.eclipse.jetty.servlet.ServletContextHandler; -import org.eclipse.jetty.servlet.ServletHolder; -import org.eclipse.jetty.util.ssl.SslContextFactory; -import org.eclipse.jetty.util.thread.QueuedThreadPool; +import org.apache.hbase.thirdparty.org.eclipse.jetty.http.HttpVersion; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConfiguration; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.HttpConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SecureRequestCustomizer; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.Server; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.ServerConnector; +import org.apache.hbase.thirdparty.org.eclipse.jetty.server.SslConnectionFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletContextHandler; +import org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.ssl.SslContextFactory; +import org.apache.hbase.thirdparty.org.eclipse.jetty.util.thread.QueuedThreadPool; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/pom.xml b/pom.xml index d15489d123ae..3924fcd999dc 100755 --- a/pom.xml +++ b/pom.xml @@ -977,6 +977,45 @@ + + banned-jetty + + enforce + + + + + + org.eclipse.jetty:** + + + Use shaded jetty instead + + false + + + + + + banned-jersey + + enforce + + + + + + >org.glassfish.jersey.containers:** + >org.glassfish.jersey.core:** + + + Use shaded jersey instead + + false + + + + check-aggregate-license process-resources @@ -1090,6 +1129,22 @@ org.htrace.** + + true + 512 + Use shaded jetty in hbase-thirdparty + + org.eclipse.jetty.** + + + + true + 512 + Use shaded jersey in hbase-thirdparty + + org.glassfish.jersey.** + + @@ -1376,12 +1431,9 @@ 3.2.6 2.10.1 2.10.1 - 2.2.12 - 9.3.28.v20191105 + 2.3.1 3.1.0 - 2.0.1 - - 2.25.1 + 2.1.1 2.3.2 3.0.1-b08 9.1.17.0 @@ -1434,7 +1486,7 @@ 3.0.0-M4 2.12 1.0.1 - 3.3.0 + 3.4.0 @@ -1495,8 +1547,8 @@ ${hbase-surefire.argLine} 0.7.5.201505241946 - 1.0-beta-9 - 3.0.0-M2 + 1.3 + 3.0.0-M3 0.14.0 ${project.build.directory}/test-classes @@ -2019,77 +2071,11 @@ javax.annotation-api 1.2 - - org.eclipse.jetty - jetty-server - ${jetty.version} - - - org.eclipse.jetty - jetty-servlet - ${jetty.version} - - - org.eclipse.jetty - servlet-api - - - - - org.eclipse.jetty - jetty-security - ${jetty.version} - - - org.eclipse.jetty - jetty-http - ${jetty.version} - - - org.eclipse.jetty - jetty-util - ${jetty.version} - - - org.eclipse.jetty - jetty-io - ${jetty.version} - - - org.eclipse.jetty - jetty-jmx - ${jetty.version} - - - org.eclipse.jetty - jetty-webapp - ${jetty.version} - - - org.eclipse.jetty - jetty-util-ajax - ${jetty.version} - com.google.protobuf protobuf-java ${external.protobuf.version} - - org.glassfish.jersey.containers - jersey-container-servlet-core - ${jersey.version} - - - org.glassfish.jersey.core - jersey-client - ${jersey.version} - - - org.glassfish.jersey.core - jersey-server - ${jersey.version} - org.glassfish.web @@ -2253,6 +2239,16 @@ hbase-shaded-protobuf ${hbase-thirdparty.version} + + org.apache.hbase.thirdparty + hbase-shaded-jetty + ${hbase-thirdparty.version} + + + org.apache.hbase.thirdparty + hbase-shaded-jersey + ${hbase-thirdparty.version} + com.sun.xml.ws jaxws-ri