diff --git a/hadoop-ozone/recon/pom.xml b/hadoop-ozone/recon/pom.xml index 84d466c81cb5..c2d25b203a2f 100644 --- a/hadoop-ozone/recon/pom.xml +++ b/hadoop-ozone/recon/pom.xml @@ -229,10 +229,6 @@ org.glassfish.jersey.containers jersey-container-servlet-core - - org.glassfish.jersey.core - jersey-common - org.glassfish.jersey.core jersey-server diff --git a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/ReconRestServletModule.java b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/ReconRestServletModule.java index 544e22757e65..28a138a73ed9 100644 --- a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/ReconRestServletModule.java +++ b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/ReconRestServletModule.java @@ -23,6 +23,9 @@ import java.net.URL; import java.util.HashMap; import java.util.Map; +import javax.inject.Inject; +import javax.servlet.ServletContext; +import javax.ws.rs.core.Context; import javax.ws.rs.core.UriBuilder; import org.apache.hadoop.hdds.conf.ConfigurationSource; import org.apache.hadoop.hdds.conf.OzoneConfiguration; @@ -31,10 +34,7 @@ import org.apache.hadoop.ozone.recon.api.filters.ReconAuthFilter; import org.apache.hadoop.ozone.recon.chatbot.ChatbotConfigKeys; import org.glassfish.hk2.api.ServiceLocator; -import org.glassfish.jersey.internal.inject.InjectionManager; import org.glassfish.jersey.server.ResourceConfig; -import org.glassfish.jersey.server.spi.Container; -import org.glassfish.jersey.server.spi.ContainerLifecycleListener; import org.glassfish.jersey.servlet.ServletContainer; import org.jvnet.hk2.guice.bridge.api.GuiceBridge; import org.jvnet.hk2.guice.bridge.api.GuiceIntoHK2Bridge; @@ -125,31 +125,14 @@ private void checkIfPackageExistsAndLog(String pkg) { * Class to bridge Guice bindings to Jersey hk2 bindings. */ class GuiceResourceConfig extends ResourceConfig { - GuiceResourceConfig() { - register(new ContainerLifecycleListener() { - - @Override - public void onStartup(Container container) { - ServletContainer servletContainer = (ServletContainer) container; - InjectionManager injectionManager = container.getApplicationHandler() - .getInjectionManager(); - ServiceLocator serviceLocator = injectionManager - .getInstance(ServiceLocator.class); - GuiceBridge.getGuiceBridge().initializeGuiceBridge(serviceLocator); - GuiceIntoHK2Bridge guiceBridge = serviceLocator - .getService(GuiceIntoHK2Bridge.class); - Injector injector = (Injector) servletContainer.getServletContext() - .getAttribute(Injector.class.getName()); - guiceBridge.bridgeGuiceInjector(injector); - } - - @Override - public void onReload(Container container) { - } - - @Override - public void onShutdown(Container container) { - } - }); + @Inject + GuiceResourceConfig(ServiceLocator serviceLocator, + @Context ServletContext servletContext) { + GuiceBridge.getGuiceBridge().initializeGuiceBridge(serviceLocator); + GuiceIntoHK2Bridge guiceBridge = serviceLocator + .getService(GuiceIntoHK2Bridge.class); + Injector injector = (Injector) servletContext + .getAttribute(Injector.class.getName()); + guiceBridge.bridgeGuiceInjector(injector); } }