public class SimpleServletHandlerAdapter extends Object implements HandlerAdapter
service
method to handle a request.
Last-modified checking is not explicitly supported: This is typically handled by the Servlet implementation itself (usually deriving from the HttpServlet base class).
This adapter is not activated by default; it needs to be defined as a bean in the DispatcherServlet context. It will automatically apply to mapped handler beans that implement the Servlet interface then.
Note that Servlet instances defined as bean will not receive initialization and destruction callbacks, unless a special post-processor such as SimpleServletPostProcessor is defined in the DispatcherServlet context.
Alternatively, consider wrapping a Servlet with Spring's ServletWrappingController. This is particularly appropriate for existing Servlet classes, allowing to specify Servlet initialization parameters etc.
Servlet
,
HttpServlet
,
SimpleServletPostProcessor
,
ServletWrappingController
Constructor and Description |
---|
SimpleServletHandlerAdapter() |
Modifier and Type | Method and Description |
---|---|
long |
getLastModified(HttpServletRequest request,
Object handler)
Same contract as for HttpServlet's
getLastModified method. |
ModelAndView |
handle(HttpServletRequest request,
HttpServletResponse response,
Object handler)
Use the given handler to handle this request.
|
boolean |
supports(Object handler)
Given a handler instance, return whether or not this HandlerAdapter can
support it.
|
public boolean supports(Object handler)
HandlerAdapter
A typical implementation:
return (handler instanceof MyHandler);
supports
in interface HandlerAdapter
handler
- handler object to checkpublic ModelAndView handle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception
HandlerAdapter
handle
in interface HandlerAdapter
request
- current HTTP requestresponse
- current HTTP responsehandler
- handler to use. This object must have previously been passed
to the supports
method of this interface, which must have
returned true
.null
if the request has been handled directlyException
- in case of errorspublic long getLastModified(HttpServletRequest request, Object handler)
HandlerAdapter
getLastModified
method.
Can simply return -1 if there's no support in the handler class.getLastModified
in interface HandlerAdapter
request
- current HTTP requesthandler
- handler to useHttpServlet.getLastModified(javax.servlet.http.HttpServletRequest)
,
LastModified.getLastModified(javax.servlet.http.HttpServletRequest)