spring-framework / org.springframework.web.servlet.resource / DefaultServletHttpRequestHandler

DefaultServletHttpRequestHandler

open class DefaultServletHttpRequestHandler : HttpRequestHandler, ServletContextAware

An HttpRequestHandler for serving static files using the Servlet container's "default" Servlet.

This handler is intended to be used with a "/*" mapping when the org.springframework.web.servlet.DispatcherServlet is mapped to "/", thus overriding the Servlet container's default handling of static resources. The mapping to this handler should generally be ordered as the last in the chain so that it will only execute when no other more specific mappings (i.e., to controllers) can be matched.

Requests are handled by forwarding through the RequestDispatcher obtained via the name specified through the "defaultServletName" property. In most cases, the defaultServletName does not need to be set explicitly, as the handler checks at initialization time for the presence of the default Servlet of well-known containers such as Tomcat, Jetty, Resin, WebLogic and WebSphere. However, when running in a container where the default Servlet's name is not known, or where it has been customized via server configuration, the defaultServletName will need to be set explicitly.

Author
Jeremy Grelle

Author
Juergen Hoeller

Since
3.0.4

Constructors

<init>

DefaultServletHttpRequestHandler()

An HttpRequestHandler for serving static files using the Servlet container's "default" Servlet.

This handler is intended to be used with a "/*" mapping when the org.springframework.web.servlet.DispatcherServlet is mapped to "/", thus overriding the Servlet container's default handling of static resources. The mapping to this handler should generally be ordered as the last in the chain so that it will only execute when no other more specific mappings (i.e., to controllers) can be matched.

Requests are handled by forwarding through the RequestDispatcher obtained via the name specified through the "defaultServletName" property. In most cases, the defaultServletName does not need to be set explicitly, as the handler checks at initialization time for the presence of the default Servlet of well-known containers such as Tomcat, Jetty, Resin, WebLogic and WebSphere. However, when running in a container where the default Servlet's name is not known, or where it has been customized via server configuration, the defaultServletName will need to be set explicitly.

Functions

handleRequest

open fun handleRequest(request: HttpServletRequest, response: HttpServletResponse): Unit

setDefaultServletName

open fun setDefaultServletName(defaultServletName: String): Unit

Set the name of the default Servlet to be forwarded to for static resource requests.

setServletContext

open fun setServletContext(servletContext: ServletContext): Unit

If the defaultServletName property has not been explicitly set, attempts to locate the default Servlet using the known common container-specific names.