Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jetty.servlet
Class ServletHandler

    java.lang.Object
      org.eclipse.jetty.util.component.AbstractLifeCycle
          org.eclipse.jetty.server.handler.AbstractHandler
              org.eclipse.jetty.server.handler.AbstractHandlerContainer
                  org.eclipse.jetty.server.handler.HandlerWrapper
                      org.eclipse.jetty.server.handler.ScopedHandler
                          org.eclipse.jetty.servlet.ServletHandler

All Implemented Interfaces:
  Handler, HandlerContainer, LifeCycle

Direct Known Subclasses:
  ServletHandler

    public class ServletHandler

extends ScopedHandler

Servlet HttpHandler. This handler maps requests to servlets that implement the javax.servlet.http.HttpServlet API.

This handler does not implement the full J2EE features and is intended to be used when a full web application is not required. Specifically filters and request wrapping are not supported. Unless run as part of a `ServletContextHandler` or derivative, the `initialize()` method must be called manually after start().

Nested Class Summary

Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`AbstractLifeCycle.AbstractLifeCycleListener`

Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
`LifeCycle.Listener`

Field Summary
`static java.lang.String` | `__DEFAULT_SERVLET`
`protected java.util.concurrent.ConcurrentMap<java.lang.String,FilterChain>[]` | `_chainCache`
`protected java.util.Queue<java.lang.String>[]` | `_chainLRU`

Fields inherited from class org.eclipse.jetty.server.handler.ScopedHandler
`_nextScope, _outerScope`

Fields inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
`_handler`

Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING`

Constructor Summary
`ServletHandler()` Constructor.

Method Summary
`void` | `addFilter(FilterHolder filter)` Convenience method to add a preconstructed FilterHolder
`void` | `addFilter(FilterHolder filter, FilterMapping filterMapping)` convenience method to add a filter and mapping
`FilterHolder` | `addFilter(java.lang.String className, java.lang.String pathSpec, java.util.EnumSet<DispatcherType> dispatches)` Deprecated. use `#addFilterWithMapping(Class, String, EnumSet)` instead
`void` | `addFilterMapping(FilterMapping mapping)` Convenience method to add a preconstructed FilterMapping
`FilterHolder` | `addFilterWithMapping(java.lang.Class<? extends Filter> filter, java.lang.String pathSpec, java.util.EnumSet<DispatcherType> dispatches)` Convenience method to add a filter.
`void` | `addFilterWithMapping(FilterHolder holder, java.lang.String pathSpec, java.util.EnumSet<DispatcherType> dispatches)` Convenience method to add a filter.
`FilterHolder` | `addFilterWithMapping(java.lang.String className, java.lang.String pathSpec, java.util.EnumSet<DispatcherType> dispatches)` Convenience method to add a filter.
`void` | `addServlet(ServletHolder holder)` Convenience method to add a pre-constructed ServletHolder.
`void` | `addServletMapping(ServletMapping mapping)` Convenience method to add a pre-constructed ServletMapping.
`ServletHolder` | `addServletWithMapping(java.lang.Class<? extends Servlet> servlet, java.lang.String pathSpec)` conveniance method to add a servlet.
`void` | `addServletWithMapping(ServletHolder servlet, java.lang.String pathSpec)` conveniance method to add a servlet.
`ServletHolder` | `addServletWithMapping(java.lang.String className, java.lang.String pathSpec)` conveniance method to add a servlet.
`void` | `doHandle(java.lang.String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)`
`void` | `doScope(java.lang.String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response)`
`protected void` | `doStart()`
`protected void` | `doStop()`
`protected void` | `dump(java.lang.Appendable out, java.lang.String indent)`
`java.lang.Object` | `getContextLog()`
`FilterHolder` | `getFilter(java.lang.String name)`
`FilterMapping[]` | `getFilterMappings()`
`FilterHolder[]` | `getFilters()` Get Filters.
`PathMap.Entry` | `getHolderEntry(java.lang.String pathInContext)` ServletHolder matching path.
`int` | `getMaxFilterChainsCacheSize()`
`RequestDispatcher` | `getRequestDispatcher(java.lang.String uriInContext)`
`ServletHolder` | `getServlet(java.lang.String name)`
`ServletContext` | `getServletContext()`
`ServletMapping` | `getServletMapping(java.lang.String pattern)`
`ServletMapping[]` | `getServletMappings()`
`ServletHolder[]` | `getServlets()` Get Servlets.
`void` | `initialize()` Initialize filters and load-on-startup servlets.
`boolean` | `isAvailable()`
`boolean` | `isFilterChainsCached()`
`boolean` | `isStartWithUnavailable()`
`FilterHolder` | `newFilterHolder(Holder.Source source)`
`ServletHolder` | `newServletHolder(Holder.Source source)` see also newServletHolder(Class)
`protected void` | `notFound(HttpServletRequest request, HttpServletResponse response)`
`void` | `prependFilterMapping(FilterMapping mapping)` Convenience method to add a preconstructed FilterMapping
`void` | `setFilterChainsCached(boolean filterChainsCached)`
`void` | `setFilterMappings(FilterMapping[] filterMappings)`
`void` | `setFilters(FilterHolder[] holders)`
`void` | `setMaxFilterChainsCacheSize(int maxFilterChainsCacheSize)` Set the maximum filter chain cache size.
`void` | `setServer(Server server)`
`void` | `setServletMappings(ServletMapping[] servletMappings)`
`void` | `setServlets(ServletHolder[] holders)` Set Servlets.
`java.util.Set<java.lang.String>` | `setServletSecurity(ServletRegistration.Dynamic registration, ServletSecurityElement servletSecurityElement)`
`void` | `setStartWithUnavailable(boolean start)`
`protected void` | `updateMappings()`
`protected void` | `updateNameMappings()`

Methods inherited from class org.eclipse.jetty.server.handler.ScopedHandler
`handle, never, nextHandle, nextScope`

Methods inherited from class org.eclipse.jetty.server.handler.HandlerWrapper
`expandChildren, getHandler, getHandlers, getNestedHandlerByClass, setHandler`

Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer
`dumpHandlers, expandHandler, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass`

Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandler
`destroy, dump, dump, getServer, toString`

Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`addLifeCycleListener, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle
`addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

Field Detail

### __DEFAULT_SERVLET

    public static final java.lang.String __DEFAULT_SERVLET

See Also:
  Constant Field Values

### _chainCache

    protected final java.util.concurrent.ConcurrentMap<java.lang.String,FilterChain>[] _chainCache

### _chainLRU

    protected final java.util.Queue<java.lang.String>[] _chainLRU

Constructor Detail

### ServletHandler

    public ServletHandler()

  Constructor.

Method Detail

### setServer

    public void setServer(Server server)

  Specified by:
    `setServer` in interface `Handler`
  Overrides:
    `setServer` in class `HandlerWrapper`

### doStart

    protected void doStart()
                    throws java.lang.Exception

  Overrides:
    `doStart` in class `ScopedHandler`
  Throws:
    `java.lang.Exception`
  See Also:
    `HandlerWrapper.doStart()`

### doStop

    protected void doStop()
                   throws java.lang.Exception

  Overrides:
    `doStop` in class `HandlerWrapper`
  Throws:
    `java.lang.Exception`

### getContextLog

    public java.lang.Object getContextLog()

  Returns:
    Returns the contextLog.

### getFilterMappings

    public FilterMapping[] getFilterMappings()

  Returns:
    Returns the filterMappings.

### getFilters

    public FilterHolder[] getFilters()

  Get Filters.

  Returns:
    Array of defined servlets

### getHolderEntry

    public PathMap.Entry getHolderEntry(java.lang.String pathInContext)

  ServletHolder matching path.

  Parameters:
    `pathInContext` - Path within _context.
  Returns:
    PathMap Entries pathspec to ServletHolder

### getRequestDispatcher

    public RequestDispatcher getRequestDispatcher(java.lang.String uriInContext)

  Parameters:
    `uriInContext` - uri to get dispatcher for
  Returns:
    A `dispatcher` wrapping the resource at `uriInContext`, or `null` if the specified uri cannot be dispatched to.

### getServletContext

    public ServletContext getServletContext()

### getServletMappings

    public ServletMapping[] getServletMappings()

  Returns:
    Returns the servletMappings.

### getServletMapping

    public ServletMapping getServletMapping(java.lang.String pattern)

  Returns:
    Returns the servletMappings.

### getServlets

    public ServletHolder[] getServlets()

  Get Servlets.

  Returns:
    Array of defined servlets

### getServlet

    public ServletHolder getServlet(java.lang.String name)

### doScope

    public void doScope(java.lang.String target,
                        Request baseRequest,
                        HttpServletRequest request,
                        HttpServletResponse response)
                 throws java.io.IOException,
                        ServletException

  Specified by:
    `doScope` in class `ScopedHandler`
  Throws:
    `java.io.IOException`
    `ServletException`

### doHandle

    public void doHandle(java.lang.String target,
                         Request baseRequest,
                         HttpServletRequest request,
                         HttpServletResponse response)
                  throws java.io.IOException,
                         ServletException

  Specified by:
    `doHandle` in class `ScopedHandler`
  Throws:
    `java.io.IOException`
    `ServletException`

### isAvailable

    public boolean isAvailable()

  Returns:
    true if the handler is started and there are no unavailable servlets

### setStartWithUnavailable

    public void setStartWithUnavailable(boolean start)

  Parameters:
    `start` - True if this handler will start with unavailable servlets

### isStartWithUnavailable

    public boolean isStartWithUnavailable()

  Returns:
    True if this handler will start with unavailable servlets

### initialize

    public void initialize()
                    throws java.lang.Exception

  Initialize filters and load-on-startup servlets. Called automatically from start if autoInitializeServlet is true.

  Throws:
    `java.lang.Exception`

### isFilterChainsCached

    public boolean isFilterChainsCached()

  Returns:
    Returns the filterChainsCached.

### newServletHolder

    public ServletHolder newServletHolder(Holder.Source source)

  see also newServletHolder(Class)

### addServletWithMapping

    public ServletHolder addServletWithMapping(java.lang.String className,
                                               java.lang.String pathSpec)

  conveniance method to add a servlet.

  Returns:
    The servlet holder.

### addServletWithMapping

    public ServletHolder addServletWithMapping(java.lang.Class<? extends Servlet> servlet,
                                               java.lang.String pathSpec)

  conveniance method to add a servlet.

  Returns:
    The servlet holder.

### addServletWithMapping

    public void addServletWithMapping(ServletHolder servlet,
                                      java.lang.String pathSpec)

  conveniance method to add a servlet.

  Parameters:
    `servlet` - servlet holder to add
    `pathSpec` - servlet mappings for the servletHolder

### addServlet

    public void addServlet(ServletHolder holder)

  Convenience method to add a pre-constructed ServletHolder.

  Parameters:
    `holder` -

### addServletMapping

    public void addServletMapping(ServletMapping mapping)

  Convenience method to add a pre-constructed ServletMapping.

  Parameters:
    `mapping` -

### setServletSecurity

    public java.util.Set<java.lang.String> setServletSecurity(ServletRegistration.Dynamic registration,
                                                              ServletSecurityElement servletSecurityElement)

### newFilterHolder

    public FilterHolder newFilterHolder(Holder.Source source)

  See Also:
    `#newFilterHolder(Class)`

### getFilter

    public FilterHolder getFilter(java.lang.String name)

### addFilterWithMapping

    public FilterHolder addFilterWithMapping(java.lang.Class<? extends Filter> filter,
                                             java.lang.String pathSpec,
                                             java.util.EnumSet<DispatcherType> dispatches)

  Convenience method to add a filter.

  Parameters:
    `filter` - class of filter to create
    `pathSpec` - filter mappings for filter
    `dispatches` - see `FilterMapping.setDispatches(int)`
  Returns:
    The filter holder.

### addFilterWithMapping

    public FilterHolder addFilterWithMapping(java.lang.String className,
                                             java.lang.String pathSpec,
                                             java.util.EnumSet<DispatcherType> dispatches)

  Convenience method to add a filter.

  Parameters:
    `className` - of filter
    `pathSpec` - filter mappings for filter
    `dispatches` - see `FilterMapping.setDispatches(int)`
  Returns:
    The filter holder.

### addFilterWithMapping

    public void addFilterWithMapping(FilterHolder holder,
                                     java.lang.String pathSpec,
                                     java.util.EnumSet<DispatcherType> dispatches)

  Convenience method to add a filter.

  Parameters:
    `holder` - filter holder to add
    `pathSpec` - filter mappings for filter
    `dispatches` - see `FilterMapping.setDispatches(int)`

### addFilter

    public FilterHolder addFilter(java.lang.String className,
                                  java.lang.String pathSpec,
                                  java.util.EnumSet<DispatcherType> dispatches)

  Deprecated. use `#addFilterWithMapping(Class, String, EnumSet)` instead

  Convenience method to add a filter with a mapping

  Parameters:
    `className` -
    `pathSpec` -
    `dispatches` -
  Returns:
    the filter holder created

### addFilter

    public void addFilter(FilterHolder filter,
                          FilterMapping filterMapping)

  convenience method to add a filter and mapping

  Parameters:
    `filter` -
    `filterMapping` -

### addFilter

    public void addFilter(FilterHolder filter)

  Convenience method to add a preconstructed FilterHolder

  Parameters:
    `filter` -

### addFilterMapping

    public void addFilterMapping(FilterMapping mapping)

  Convenience method to add a preconstructed FilterMapping

  Parameters:
    `mapping` -

### prependFilterMapping

    public void prependFilterMapping(FilterMapping mapping)

  Convenience method to add a preconstructed FilterMapping

  Parameters:
    `mapping` -

### updateNameMappings

    protected void updateNameMappings()

### updateMappings

    protected void updateMappings()

### notFound

    protected void notFound(HttpServletRequest request,
                            HttpServletResponse response)
                     throws java.io.IOException

  Throws:
    `java.io.IOException`

### setFilterChainsCached

    public void setFilterChainsCached(boolean filterChainsCached)

  Parameters:
    `filterChainsCached` - The filterChainsCached to set.

### setFilterMappings

    public void setFilterMappings(FilterMapping[] filterMappings)

  Parameters:
    `filterMappings` - The filterMappings to set.

### setFilters

    public void setFilters(FilterHolder[] holders)

### setServletMappings

    public void setServletMappings(ServletMapping[] servletMappings)

  Parameters:
    `servletMappings` - The servletMappings to set.

### setServlets

    public void setServlets(ServletHolder[] holders)

  Set Servlets.

  Parameters:
    `holders` - Array of servletsto define

### getMaxFilterChainsCacheSize

    public int getMaxFilterChainsCacheSize()

  Returns:
    The maximum entries in a filter chain cache.

### setMaxFilterChainsCacheSize

    public void setMaxFilterChainsCacheSize(int maxFilterChainsCacheSize)

  Set the maximum filter chain cache size. Filter chains are cached if `isFilterChainsCached()` is true. If the max cache size is greater than zero, then the cache is flushed whenever it grows to be this size.

  Parameters:
    `maxFilterChainsCacheSize` - the maximum number of entries in a filter chain cache.

### dump

    protected void dump(java.lang.Appendable out,
                        java.lang.String indent)
                 throws java.io.IOException

  Overrides:
    `dump` in class `AbstractHandlerContainer`
  Throws:
    `java.io.IOException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1995-2010 Mort Bay Consulting. All Rights Reserved.