com.sun.jersey.guice.spi.container.servlet
Class GuiceContainer

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by com.sun.jersey.spi.container.servlet.ServletContainer
              extended by com.sun.jersey.guice.spi.container.servlet.GuiceContainer
All Implemented Interfaces:
java.io.Serializable, javax.servlet.Filter, javax.servlet.Servlet, javax.servlet.ServletConfig

@Singleton
public class GuiceContainer
extends ServletContainer

A Servlet or Filter for deploying root resource classes with Guice integration.

This class must be registered using com.google.inject.servlet.ServletModule.

This class extends ServletContainer and initiates the WebApplication with a Guice-based IoCComponentProviderFactory, GuiceContainer.ServletGuiceComponentProviderFactory, such that instances of resource and provider classes declared and managed by Guice can be obtained.

Guice-bound classes will be automatically registered if such classes are root resource classes or provider classes. It is not necessary to provide initialization parameters for declaring classes in the web.xml unless a mixture of Guice-bound and Jersey-managed classes is required.

Author:
Gili Tzabari, Paul Sandoz
See Also:
ServletModule, Serialized Form

Nested Class Summary
 class GuiceContainer.ServletGuiceComponentProviderFactory
           
 
Nested classes/interfaces inherited from class com.sun.jersey.spi.container.servlet.ServletContainer
ServletContainer.ContextInjectableProvider<T>
 
Field Summary
 
Fields inherited from class com.sun.jersey.spi.container.servlet.ServletContainer
APPLICATION_CONFIG_CLASS, FEATURE_FILTER_FORWARD_ON_404, GLASSFISH_DEFAULT_ERROR_PAGE_RESPONSE, JSP_TEMPLATES_BASE_PATH, PROPERTY_FILTER_CONTEXT_PATH, PROPERTY_WEB_PAGE_CONTENT_REGEX, RESOURCE_CONFIG_CLASS
 
Constructor Summary
GuiceContainer(Injector injector)
          Creates a new Injector.
 
Method Summary
protected  ResourceConfig getDefaultResourceConfig(java.util.Map<java.lang.String,java.lang.Object> props, WebConfig webConfig)
           
 WebApplication getWebApplication()
           
protected  void initiate(ResourceConfig config, WebApplication webapp)
           
 
Methods inherited from class com.sun.jersey.spi.container.servlet.ServletContainer
configure, configure, configure, create, destroy, doFilter, doFilter, getDefaultResourceConfig, getServletContext, getStaticContentPattern, getWebConfig, init, init, init, load, reload, service, service
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
 
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GuiceContainer

@Inject
public GuiceContainer(Injector injector)
Creates a new Injector.

Parameters:
injector - the Guice injector
Method Detail

getDefaultResourceConfig

protected ResourceConfig getDefaultResourceConfig(java.util.Map<java.lang.String,java.lang.Object> props,
                                                  WebConfig webConfig)
                                           throws javax.servlet.ServletException
Overrides:
getDefaultResourceConfig in class ServletContainer
Throws:
javax.servlet.ServletException

initiate

protected void initiate(ResourceConfig config,
                        WebApplication webapp)
Overrides:
initiate in class ServletContainer

getWebApplication

public WebApplication getWebApplication()


Copyright © 2014 Oracle Corporation. All Rights Reserved.