Spring:在自定义ViewResolver中访问HttpServletRequest

Spring:在自定义ViewResolver中访问HttpServletRequest,spring,Spring,我想在自定义的基于InternalResourceViewResolver的解析器中访问发起请求的HttpServletRequest对象。有什么简单的方法可以做到这一点吗?我在这里使用的是Spring 2.5。当前请求中没有提供ViewResolver接口,因此它的实现也没有提供 但是,您确实可以选择从RequestContextHolder获取当前请求,它使用线程绑定变量来存储请求之类的内容,但这并不完美: ((ServletRequestAttributes)RequestContextH

我想在自定义的基于InternalResourceViewResolver的解析器中访问发起请求的HttpServletRequest对象。有什么简单的方法可以做到这一点吗?我在这里使用的是Spring 2.5。

当前请求中没有提供
ViewResolver
接口,因此它的实现也没有提供

但是,您确实可以选择从
RequestContextHolder
获取当前请求,它使用线程绑定变量来存储请求之类的内容,但这并不完美:

((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest();

谢谢。这就成功了。我应该知道这种技术的任何副作用?不是副作用本身,而是上下文持有者是由DispatcherServlet初始化的。只要你的请求通过了,那么你就应该没事,只要你不开始用后台线程做一些无礼的事情。