我正在开发一个具有自定义RequestContext类的应用程序。到目前为止,我们在REST控制器中获取此RequestContext,如下所示:
@RequestMapping(value = {"/init", "/"}, method = RequestMethod.GET)
public Toto accueil(RequestContext rc) {
..
}
我想将此类声明为"请求范围"并且能够将其注入其他bean中,所以我添加了
@Scope(value = "request", proxyMode = ScopedProxyMode.TARGET_CLASS)
@Component
调试时,我正在使用@Autowire,我看到spring根据请求创建了一个新实例。问题是他没有自动填充我的bean,所有值都为null。
如何告诉spring使用真实HttpRequest中的适当值初始化此请求范围的bean?
编辑:刚刚发现目前有一个 HandlerMethodArgumentResolver 在控制器方法调用中填充对象。我希望做类似的事情,但这适用于每个请求。
答案 0 :(得分:0)
根据我的描述,您可以使用Filter,并在doFilter函数中使用请求中的适当值初始化请求范围的bean。