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 b78af2f549..a0ace24ef7 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 @@ -1,4 +1,4 @@ -/** +/* * 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 @@ -68,7 +68,9 @@ import org.eclipse.jetty.servlet.FilterHolder; import org.glassfish.jersey.server.ResourceConfig; import org.glassfish.jersey.servlet.ServletContainer; +import org.glassfish.jersey.internal.RuntimeDelegateImpl; +import javax.ws.rs.ext.RuntimeDelegate; import javax.servlet.DispatcherType; /** @@ -234,8 +236,9 @@ public class RESTServer implements Constants { parseCommandLine(args, servlet); - // set up the Jersey servlet container for Jetty - ResourceConfig application = new ResourceConfig(); + // Set up the Jersey servlet container for Jetty + ResourceConfig application = // new ResourceConfig(); + new ResourceConfig().packages("org.apache.hadoop.hbase.rest"); ServletHolder sh = new ServletHolder(new ServletContainer(application)); // Set the default max thread number to 100 to limit @@ -324,7 +327,11 @@ public class RESTServer implements Constants { server.addConnector(serverConnector); server.setStopAtShutdown(true); - // set up context + // Load jersey2 RuntimeDelegate else we get jersey1 default which + // isn't on our classpath. + RuntimeDelegate.setInstance(new RuntimeDelegateImpl()); + + // Set up context ServletContextHandler ctxHandler = new ServletContextHandler(server, "/", ServletContextHandler.SESSIONS); ctxHandler.addServlet(sh, PATH_SPEC_ANY); if (authFilter != null) { diff --git a/pom.xml b/pom.xml index 9da4c6b2d7..c78e8615ad 100644 --- a/pom.xml +++ b/pom.xml @@ -1530,6 +1530,12 @@ org.apache.hbase hbase-hadoop-compat ${project.version} + + + com.sun.jersey + jersey-core + + org.apache.hbase @@ -1537,6 +1543,12 @@ ${project.version} test-jar test + + + com.sun.jersey + jersey-core + + org.apache.hbase @@ -2262,6 +2274,10 @@ hadoop-mapreduce-client-core ${hadoop-two.version} + + com.sun.jersey + jersey-core + io.netty netty @@ -2278,6 +2294,14 @@ ${hadoop-two.version} + com.sun.jersey + jersey-core + + + com.sun.jersey + jersey-core + + io.netty netty @@ -2295,6 +2319,10 @@ test + com.sun.jersey + jersey-core + + io.netty netty @@ -2309,6 +2337,10 @@ hadoop-hdfs + com.sun.jersey + jersey-core + + javax.servlet.jsp jsp-api @@ -2339,6 +2371,10 @@ test + com.sun.jersey + jersey-core + + javax.servlet.jsp jsp-api @@ -2371,6 +2407,10 @@ ${hadoop-two.version} + com.sun.jersey + jersey-core + + javax.servlet.jsp jsp-api @@ -2408,6 +2448,10 @@ hadoop-minicluster ${hadoop-two.version} + + com.sun.jersey + jersey-core + commons-httpclient commons-httpclient @@ -2439,6 +2483,12 @@ hadoop-minikdc ${hadoop-two.version} test + + + com.sun.jersey + jersey-core + + @@ -2473,6 +2523,10 @@ ${hadoop-three.version} + com.sun.jersey + jersey-core + + io.netty netty @@ -2484,6 +2538,10 @@ ${hadoop-three.version} + com.sun.jersey + jersey-core + + io.netty netty @@ -2497,6 +2555,10 @@ test + com.sun.jersey + jersey-core + + io.netty netty @@ -2533,6 +2595,10 @@ test + com.sun.jersey + jersey-core + + javax.servlet.jsp jsp-api @@ -2556,6 +2622,10 @@ ${hadoop-three.version} + com.sun.jersey + jersey-core + + com.google.guava guava @@ -2567,6 +2637,10 @@ ${hadoop-three.version} + com.sun.jersey + jersey-core + + javax.servlet.jsp jsp-api @@ -2596,6 +2670,12 @@ org.apache.hadoop hadoop-client ${hadoop-three.version} + + + com.sun.jersey + jersey-core + + org.apache.hadoop @@ -2609,6 +2689,10 @@ hadoop-minicluster ${hadoop-three.version} + + com.sun.jersey + jersey-core + commons-httpclient commons-httpclient