## org.mortbay.jetty.servlet
Class Dispatcher

    java.lang.Object
      org.mortbay.jetty.servlet.Dispatcher

All Implemented Interfaces:
  RequestDispatcher

    public class Dispatcher

extends Object
implements RequestDispatcher

Servlet RequestDispatcher.

Author:
  Greg Wilkins (gregw)

Field Summary
`static String` `__FORWARD_CONTEXT_PATH`
`static String` `__FORWARD_JETTY` Dispatch include attribute names
`static String` `__FORWARD_PATH_INFO`
`static String` `__FORWARD_PREFIX`
`static String` `__FORWARD_QUERY_STRING`
`static String` `__FORWARD_REQUEST_URI`
`static String` `__FORWARD_SERVLET_PATH`
`static String` `__INCLUDE_CONTEXT_PATH`
`static String` `__INCLUDE_JETTY` Dispatch include attribute names
`static String` `__INCLUDE_PATH_INFO`
`static String` `__INCLUDE_PREFIX`
`static String` `__INCLUDE_QUERY_STRING`
`static String` `__INCLUDE_REQUEST_URI`
`static String` `__INCLUDE_SERVLET_PATH`
`static String` `__JSP_FILE` JSP attributes

Constructor Summary
`Dispatcher(ContextHandler contextHandler, String name)` Constructor.
`Dispatcher(ContextHandler contextHandler, String uri, String pathInContext, String query)`

Method Summary
`void` `error(ServletRequest request, ServletResponse response)`
`void` `forward(ServletRequest request, ServletResponse response)` Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server.
`protected void` `forward(ServletRequest request, ServletResponse response, int dispatch)`
`void` `include(ServletRequest request, ServletResponse response)` Includes the content of a resource (servlet, JSP page, HTML file) in the response.
`static int` `type(String type)` Dispatch type from name

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

Field Detail

### __INCLUDE_JETTY

    public static final String __INCLUDE_JETTY

  Dispatch include attribute names

  See Also:
    Constant Field Values

### __INCLUDE_PREFIX

    public static final String __INCLUDE_PREFIX

See Also:
  Constant Field Values

### __INCLUDE_REQUEST_URI

    public static final String __INCLUDE_REQUEST_URI

See Also:
  Constant Field Values

### __INCLUDE_CONTEXT_PATH

    public static final String __INCLUDE_CONTEXT_PATH

See Also:
  Constant Field Values

### __INCLUDE_SERVLET_PATH

    public static final String __INCLUDE_SERVLET_PATH

See Also:
  Constant Field Values

### __INCLUDE_PATH_INFO

    public static final String __INCLUDE_PATH_INFO

See Also:
  Constant Field Values

### __INCLUDE_QUERY_STRING

    public static final String __INCLUDE_QUERY_STRING

See Also:
  Constant Field Values

### __FORWARD_JETTY

    public static final String __FORWARD_JETTY

  Dispatch include attribute names

  See Also:
    Constant Field Values

### __FORWARD_PREFIX

    public static final String __FORWARD_PREFIX

See Also:
  Constant Field Values

### __FORWARD_REQUEST_URI

    public static final String __FORWARD_REQUEST_URI

See Also:
  Constant Field Values

### __FORWARD_CONTEXT_PATH

    public static final String __FORWARD_CONTEXT_PATH

See Also:
  Constant Field Values

### __FORWARD_SERVLET_PATH

    public static final String __FORWARD_SERVLET_PATH

See Also:
  Constant Field Values

### __FORWARD_PATH_INFO

    public static final String __FORWARD_PATH_INFO

See Also:
  Constant Field Values

### __FORWARD_QUERY_STRING

    public static final String __FORWARD_QUERY_STRING

See Also:
  Constant Field Values

### __JSP_FILE

    public static final String __JSP_FILE

  JSP attributes

  See Also:
    Constant Field Values

Constructor Detail

### Dispatcher

    public Dispatcher(ContextHandler contextHandler,
                      String uri,
                      String pathInContext,
                      String query)

Parameters:
  `contextHandler` -
  `uriInContext` -
  `pathInContext` -
  `query` -

### Dispatcher

    public Dispatcher(ContextHandler contextHandler,
                      String name)
               throws IllegalStateException

  Constructor.

  Parameters:
    `servletHandler` -
    `name` -
  Throws:
    `IllegalStateException`

Method Detail

### type

    public static int type(String type)

  Dispatch type from name

### forward

    public void forward(ServletRequest request,
                        ServletResponse response)
                 throws ServletException,
                        IOException

  Description copied from interface: `RequestDispatcher`
  Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server. This method allows one servlet to do preliminary processing of a request and another resource to generate the response.

  For a `RequestDispatcher` obtained via `getRequestDispatcher()`, the `ServletRequest` object has its path elements and parameters adjusted to match the path of the target resource.

  `forward` should be called before the response has been committed to the client (before response body output has been flushed). If the response already has been committed, this method throws an `IllegalStateException`. Uncommitted output in the response buffer is automatically cleared before the forward.

  The request and response parameters must be either the same objects as were passed to the calling servlet's service method or be subclasses of the `ServletRequestWrapper` or `ServletResponseWrapper` classes that wrap them.

  Specified by:
    `forward` in interface `RequestDispatcher`
  Parameters:
    `request` - a `ServletRequest` object that represents the request the client makes of the servlet
    `response` - a `ServletResponse` object that represents the response the servlet returns to the client
  Throws:
    `ServletException` - if the target resource throws this exception
    `IOException` - if the target resource throws this exception

### error

    public void error(ServletRequest request,
                      ServletResponse response)
               throws ServletException,
                      IOException

  Throws:
    `ServletException`
    `IOException`

### include

    public void include(ServletRequest request,
                        ServletResponse response)
                 throws ServletException,
                        IOException

  Description copied from interface: `RequestDispatcher`
  Includes the content of a resource (servlet, JSP page, HTML file) in the response. In essence, this method enables programmatic server-side includes.

  The `ServletResponse` object has its path elements and parameters remain unchanged from the caller's. The included servlet cannot change the response status code or set headers; any attempt to make a change is ignored.

  The request and response parameters must be either the same objects as were passed to the calling servlet's service method or be subclasses of the `ServletRequestWrapper` or `ServletResponseWrapper` classes that wrap them.

  Specified by:
    `include` in interface `RequestDispatcher`
  Parameters:
    `request` - a `ServletRequest` object that contains the client's request
    `response` - a `ServletResponse` object that contains the servlet's response
  Throws:
    `ServletException` - if the included resource throws this exception
    `IOException` - if the included resource throws this exception

### forward

    protected void forward(ServletRequest request,
                           ServletResponse response,
                           int dispatch)
                    throws ServletException,
                           IOException

  Throws:
    `ServletException`
    `IOException`

Copyright © 2007 Mort Bay Consulting. All Rights Reserved.