org.eclipse.jetty.servlet
Class DefaultServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.eclipse.jetty.servlet.DefaultServlet
- All Implemented Interfaces:
- Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, ResourceFactory
public class DefaultServlet
- extends javax.servlet.http.HttpServlet
- implements ResourceFactory
The default servlet.
This servlet, normally mapped to /, provides the handling for static
content, OPTION and TRACE methods for the context.
The following initParameters are supported, these can be set either
on the servlet itself or as ServletContext initParameters with a prefix
of org.eclipse.jetty.servlet.Default. :
acceptRanges If true, range requests and responses are
supported
dirAllowed If true, directory listings are returned if no
welcome file is found. Else 403 Forbidden.
welcomeServlets If true, attempt to dispatch to welcome files
that are servlets, but only after no matching static
resources could be found. If false, then a welcome
file must exist on disk. If "exact", then exact
servlet matches are supported without an existing file.
Default is true.
This must be false if you want directory listings,
but have index.jsp in your welcome file list.
redirectWelcome If true, welcome files are redirected rather than
forwarded to.
gzip If set to true, then static content will be served as
gzip content encoded if a matching resource is
found ending with ".gz"
resourceBase Set to replace the context resource base
resourceCache If set, this is a context attribute name, which the servlet
will use to look for a shared ResourceCache instance.
relativeResourceBase
Set with a pathname relative to the base of the
servlet context root. Useful for only serving static content out
of only specific subdirectories.
pathInfoOnly If true, only the path info will be applied to the resourceBase
stylesheet Set with the location of an optional stylesheet that will be used
to decorate the directory listing html.
aliases If True, aliases of resources are allowed (eg. symbolic
links and caps variations). May bypass security constraints.
maxCacheSize The maximum total size of the cache or 0 for no cache.
maxCachedFileSize The maximum size of a file to cache
maxCachedFiles The maximum number of files to cache
useFileMappedBuffer
If set to true, it will use mapped file buffer to serve static content
when using NIO connector. Setting this value to false means that
a direct buffer will be used instead of a mapped file buffer.
By default, this is set to true.
cacheControl If set, all static content will have this value set as the cache-control
header.
- See Also:
- Serialized Form
Method Summary |
void |
destroy()
|
protected void |
doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
protected void |
doOptions(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse resp)
|
protected void |
doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
protected void |
doTrace(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse resp)
|
String |
getInitParameter(String name)
|
Resource |
getResource(String pathInContext)
get Resource to serve. |
void |
init()
|
protected ContextHandler |
initContextHandler(javax.servlet.ServletContext servletContext)
Compute the field _contextHandler.
In the case where the DefaultServlet is deployed on the HttpService it is likely that
this method needs to be overwritten to unwrap the ServletContext facade until we reach
the original jetty's ContextHandler. |
protected boolean |
passConditionalHeaders(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Resource resource,
HttpContent content)
|
protected void |
sendData(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
boolean include,
Resource resource,
HttpContent content,
Enumeration reqRanges)
|
protected void |
sendDirectory(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Resource resource,
String pathInContext)
|
protected void |
writeHeaders(javax.servlet.http.HttpServletResponse response,
HttpContent content,
long count)
|
protected void |
writeOptionHeaders(HttpFields fields)
|
protected void |
writeOptionHeaders(javax.servlet.http.HttpServletResponse response)
|
Methods inherited from class javax.servlet.http.HttpServlet |
doDelete, doHead, doPut, getLastModified, service, service |
Methods inherited from class javax.servlet.GenericServlet |
getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefaultServlet
public DefaultServlet()
init
public void init()
throws javax.servlet.UnavailableException
- Overrides:
init
in class javax.servlet.GenericServlet
- Throws:
javax.servlet.UnavailableException
initContextHandler
protected ContextHandler initContextHandler(javax.servlet.ServletContext servletContext)
- Compute the field _contextHandler.
In the case where the DefaultServlet is deployed on the HttpService it is likely that
this method needs to be overwritten to unwrap the ServletContext facade until we reach
the original jetty's ContextHandler.
- Parameters:
servletContext
- The servletContext of this servlet.
- Returns:
- the jetty's ContextHandler for this servletContext.
getInitParameter
public String getInitParameter(String name)
- Specified by:
getInitParameter
in interface javax.servlet.ServletConfig
- Overrides:
getInitParameter
in class javax.servlet.GenericServlet
getResource
public Resource getResource(String pathInContext)
- get Resource to serve.
Map a path to a resource. The default implementation calls
HttpContext.getResource but derived servlets may provide
their own mapping.
- Specified by:
getResource
in interface ResourceFactory
- Parameters:
pathInContext
- The path to find a resource for.
- Returns:
- The resource to serve.
doGet
protected void doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
IOException
- Overrides:
doGet
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
IOException
doPost
protected void doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
IOException
- Overrides:
doPost
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
IOException
doTrace
protected void doTrace(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse resp)
throws javax.servlet.ServletException,
IOException
- Overrides:
doTrace
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
IOException
doOptions
protected void doOptions(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse resp)
throws javax.servlet.ServletException,
IOException
- Overrides:
doOptions
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
IOException
passConditionalHeaders
protected boolean passConditionalHeaders(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Resource resource,
HttpContent content)
throws IOException
- Throws:
IOException
sendDirectory
protected void sendDirectory(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Resource resource,
String pathInContext)
throws IOException
- Throws:
IOException
sendData
protected void sendData(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
boolean include,
Resource resource,
HttpContent content,
Enumeration reqRanges)
throws IOException
- Throws:
IOException
writeHeaders
protected void writeHeaders(javax.servlet.http.HttpServletResponse response,
HttpContent content,
long count)
throws IOException
- Throws:
IOException
writeOptionHeaders
protected void writeOptionHeaders(HttpFields fields)
throws IOException
- Throws:
IOException
writeOptionHeaders
protected void writeOptionHeaders(javax.servlet.http.HttpServletResponse response)
throws IOException
- Throws:
IOException
destroy
public void destroy()
- Specified by:
destroy
in interface javax.servlet.Servlet
- Overrides:
destroy
in class javax.servlet.GenericServlet
Copyright © 1995-2012 Mort Bay Consulting. All Rights Reserved.