java.lang.Object
org.mortbay.http.handler.AbstractHttpHandler
org.mortbay.jetty.servlet.ServletHandler
- All Implemented Interfaces:
- org.mortbay.http.HttpHandler, org.mortbay.util.LifeCycle, java.io.Serializable
- Direct Known Subclasses:
- WebApplicationHandler
- public class ServletHandler
- extends org.mortbay.http.handler.AbstractHttpHandler
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.
If a SessionManager is not added to the handler before it is
initialized, then a HashSessionManager with a standard
java.util.Random generator is created.
- Version:
- $Id: ServletHandler.java,v 1.101 2003/11/19 11:35:55 gregwilkins Exp $
|
Method Summary |
ServletHolder |
addServlet(java.lang.String pathSpec,
java.lang.String servletClass)
|
ServletHolder |
addServlet(java.lang.String name,
java.lang.String pathSpec,
java.lang.String servletClass)
Add a servlet. |
ServletHolder |
addServlet(java.lang.String name,
java.lang.String pathSpec,
java.lang.String servletClass,
java.lang.String forcedPath)
Add a servlet. |
(package private) void |
addServletHolder(java.lang.String pathSpec,
ServletHolder holder)
|
protected void |
dispatch(java.lang.String pathInContext,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
ServletHolder servletHolder)
Dispatch to a servletHolder. |
void |
formAuthInit(java.lang.String formLoginPage,
java.lang.String formErrorPage)
|
java.lang.ClassLoader |
getClassLoader()
|
(package private) java.lang.String |
getErrorPage(int status,
ServletHttpRequest request)
|
java.util.Map.Entry |
getHolderEntry(java.lang.String pathInContext)
ServletHolder matching path. |
(package private) javax.servlet.http.HttpSession |
getHttpSession(java.lang.String id)
|
javax.servlet.RequestDispatcher |
getNamedDispatcher(java.lang.String name)
Get Named dispatcher. |
java.lang.String |
getRealPath(java.lang.String path)
|
javax.servlet.RequestDispatcher |
getRequestDispatcher(java.lang.String uriInContext)
|
java.net.URL |
getResource(java.lang.String uriInContext)
Get a Resource. |
java.io.InputStream |
getResourceAsStream(java.lang.String uriInContext)
|
java.util.Set |
getResourcePaths(java.lang.String uriInContext)
|
javax.servlet.ServletContext |
getServletContext()
|
ServletHolder |
getServletHolder(java.lang.String name)
|
org.mortbay.http.PathMap |
getServletMap()
|
ServletHolder[] |
getServlets()
Get Servlets. |
SessionManager |
getSessionManager()
|
void |
handle(java.lang.String pathInContext,
java.lang.String pathParams,
org.mortbay.http.HttpRequest httpRequest,
org.mortbay.http.HttpResponse httpResponse)
Handle request. |
(package private) void |
handleOptions(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
(package private) void |
handleTrace(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
void |
initialize(org.mortbay.http.HttpContext context)
Initialize with a HttpContext. |
void |
initializeServlets()
Initialize load-on-startup servlets. |
boolean |
isAutoInitializeServlets()
|
boolean |
isUsingCookies()
|
ServletHolder |
mapPathToServlet(java.lang.String pathSpec,
java.lang.String servletName)
|
(package private) javax.servlet.http.HttpSession |
newHttpSession(javax.servlet.http.HttpServletRequest request)
|
ServletHolder |
newServletHolder(java.lang.String name,
java.lang.String servletClass)
|
ServletHolder |
newServletHolder(java.lang.String name,
java.lang.String servletClass,
java.lang.String forcedPath)
|
(package private) void |
notFound(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
void |
setAutoInitializeServlets(boolean b)
|
void |
setDynamicInitParams(java.util.Map initParams)
Deprecated. Use org.mortbay.jetty.servlet.Invoker |
void |
setDynamicServletPathSpec(java.lang.String dynamicServletPathSpec)
Deprecated. Use org.mortbay.jetty.servlet.Invoker |
void |
setServeDynamicSystemServlets(boolean b)
Deprecated. Use org.mortbay.jetty.servlet.Invoker |
(package private) void |
setSessionInactiveInterval(int seconds)
|
void |
setSessionManager(SessionManager sm)
|
void |
setUsingCookies(boolean uc)
|
void |
start()
Start the LifeCycle. |
void |
stop()
Stop the LifeCycle. |
log
private static org.apache.commons.logging.Log log
__DEFAULT_SERVLET
public static final java.lang.String __DEFAULT_SERVLET
- See Also:
- Constant Field Values
__J_S_CONTEXT_TEMPDIR
public static final java.lang.String __J_S_CONTEXT_TEMPDIR
- See Also:
- Constant Field Values
__J_S_ERROR_EXCEPTION
public static final java.lang.String __J_S_ERROR_EXCEPTION
- See Also:
- Constant Field Values
__J_S_ERROR_EXCEPTION_TYPE
public static final java.lang.String __J_S_ERROR_EXCEPTION_TYPE
- See Also:
- Constant Field Values
__J_S_ERROR_MESSAGE
public static final java.lang.String __J_S_ERROR_MESSAGE
- See Also:
- Constant Field Values
__J_S_ERROR_REQUEST_URI
public static final java.lang.String __J_S_ERROR_REQUEST_URI
- See Also:
- Constant Field Values
__J_S_ERROR_SERVLET_NAME
public static final java.lang.String __J_S_ERROR_SERVLET_NAME
- See Also:
- Constant Field Values
__J_S_ERROR_STATUS_CODE
public static final java.lang.String __J_S_ERROR_STATUS_CODE
- See Also:
- Constant Field Values
__Slosh2Slash
private static final boolean __Slosh2Slash
__AllowString
private static java.lang.String __AllowString
_usingCookies
private boolean _usingCookies
_autoInitializeServlets
private boolean _autoInitializeServlets
_servletMap
protected org.mortbay.http.PathMap _servletMap
_nameMap
protected java.util.Map _nameMap
_formLoginPage
protected java.lang.String _formLoginPage
_formErrorPage
protected java.lang.String _formErrorPage
_sessionManager
protected SessionManager _sessionManager
_context
protected transient ServletHandler.Context _context
_loader
protected transient java.lang.ClassLoader _loader
ServletHandler
public ServletHandler()
- Constructor.
initialize
public void initialize(org.mortbay.http.HttpContext context)
- Description copied from class:
org.mortbay.http.handler.AbstractHttpHandler
- Initialize with a HttpContext.
Called by addHandler methods of HttpContext.
formAuthInit
public void formAuthInit(java.lang.String formLoginPage,
java.lang.String formErrorPage)
setSessionManager
public void setSessionManager(SessionManager sm)
getSessionManager
public SessionManager getSessionManager()
getServletContext
public javax.servlet.ServletContext getServletContext()
getServletMap
public org.mortbay.http.PathMap getServletMap()
isUsingCookies
public boolean isUsingCookies()
setDynamicServletPathSpec
public void setDynamicServletPathSpec(java.lang.String dynamicServletPathSpec)
- Deprecated. Use org.mortbay.jetty.servlet.Invoker
- Set the dynamic servlet path.
setDynamicInitParams
public void setDynamicInitParams(java.util.Map initParams)
- Deprecated. Use org.mortbay.jetty.servlet.Invoker
- Set dynamic servlet initial parameters.
setServeDynamicSystemServlets
public void setServeDynamicSystemServlets(boolean b)
- Deprecated. Use org.mortbay.jetty.servlet.Invoker
- Set serving dynamic system servlets.
getClassLoader
public java.lang.ClassLoader getClassLoader()
setUsingCookies
public void setUsingCookies(boolean uc)
newServletHolder
public ServletHolder newServletHolder(java.lang.String name,
java.lang.String servletClass,
java.lang.String forcedPath)
newServletHolder
public ServletHolder newServletHolder(java.lang.String name,
java.lang.String servletClass)
getServletHolder
public ServletHolder getServletHolder(java.lang.String name)
mapPathToServlet
public ServletHolder mapPathToServlet(java.lang.String pathSpec,
java.lang.String servletName)
addServlet
public ServletHolder addServlet(java.lang.String name,
java.lang.String pathSpec,
java.lang.String servletClass,
java.lang.String forcedPath)
- Add a servlet.
addServlet
public ServletHolder addServlet(java.lang.String name,
java.lang.String pathSpec,
java.lang.String servletClass)
- Add a servlet.
addServlet
public ServletHolder addServlet(java.lang.String pathSpec,
java.lang.String servletClass)
addServletHolder
void addServletHolder(java.lang.String pathSpec,
ServletHolder holder)
isAutoInitializeServlets
public boolean isAutoInitializeServlets()
setAutoInitializeServlets
public void setAutoInitializeServlets(boolean b)
start
public void start()
throws java.lang.Exception
- Description copied from interface:
org.mortbay.util.LifeCycle
- Start the LifeCycle.
getServlets
public ServletHolder[] getServlets()
- Get Servlets.
initializeServlets
public void initializeServlets()
throws java.lang.Exception
- Initialize load-on-startup servlets.
Called automatically from start if autoInitializeServlet is true.
stop
public void stop()
throws java.lang.InterruptedException
- Description copied from interface:
org.mortbay.util.LifeCycle
- Stop the LifeCycle.
The LifeCycle may wait for current activities to complete
normally, but it can be interrupted.
getHttpSession
javax.servlet.http.HttpSession getHttpSession(java.lang.String id)
newHttpSession
javax.servlet.http.HttpSession newHttpSession(javax.servlet.http.HttpServletRequest request)
setSessionInactiveInterval
void setSessionInactiveInterval(int seconds)
handle
public void handle(java.lang.String pathInContext,
java.lang.String pathParams,
org.mortbay.http.HttpRequest httpRequest,
org.mortbay.http.HttpResponse httpResponse)
throws java.io.IOException
- Handle request.
dispatch
protected void dispatch(java.lang.String pathInContext,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
ServletHolder servletHolder)
throws javax.servlet.ServletException,
javax.servlet.UnavailableException,
java.io.IOException
- Dispatch to a servletHolder.
This method may be specialized to insert extra handling in the
dispatch of a request to a specific servlet. This is used by
WebApplicatonHandler to implement dispatched filters.
The default implementation simply calls
ServletHolder.handle(request,response)
getHolderEntry
public java.util.Map.Entry getHolderEntry(java.lang.String pathInContext)
- ServletHolder matching path.
getResourcePaths
public java.util.Set getResourcePaths(java.lang.String uriInContext)
getResource
public java.net.URL getResource(java.lang.String uriInContext)
throws java.net.MalformedURLException
- Get a Resource.
If no resource is found, resource aliases are tried.
getResourceAsStream
public java.io.InputStream getResourceAsStream(java.lang.String uriInContext)
getRealPath
public java.lang.String getRealPath(java.lang.String path)
getRequestDispatcher
public javax.servlet.RequestDispatcher getRequestDispatcher(java.lang.String uriInContext)
getNamedDispatcher
public javax.servlet.RequestDispatcher getNamedDispatcher(java.lang.String name)
- Get Named dispatcher.
notFound
void notFound(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws java.io.IOException
handleTrace
void handleTrace(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws java.io.IOException
handleOptions
void handleOptions(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws java.io.IOException
getErrorPage
java.lang.String getErrorPage(int status,
ServletHttpRequest request)