I am writing Spring 3.1.0 MVC based application. The problem is: i want to put some objects in a singleton object (current HttpServletRequest
and HttpSevletResponse
) to use them in other objects(Spring Controllers). But couldn't do so. I tried to extend DispatcherServlet
, overriding both doService
and doDispatch
. Also tried to implement own HandlerInterceptor
. No result.
Where can I initialize my singleton objects? And where is Spring Frameworks's entry point and destroy point (i.e. like init()
and destroy()
methods or lifecycle)?
The current
HttpServletRequest
andHttpServletResponse
are available as method arguments to your controller methods:I believe you can also
@Inject
them in your controller. A proxy will be injected, and each time you refer to them the current ones will be used. (I'm not 100% certain about this one)A third option is to use the
RequestContextHolder
container, and get everything from there.