今天在开发项目的时候碰到一个很郁闷的问题,由于要处理前台的ajax请求,后台用servlet来接收请求参数,而在项目

中用到spring容器来管理业务bean,在servlet中就收到前台传递来的请求参数后,调用业务bean,老是出错


部门代码如下

private UserService userService;
	
	public UserService getUserService() {
		return userService;
	}

	@Resource
	public void setUserService(UserService userService) {
		this.userService = userService;
	}

运用@Resource注解注入,老是报错说什么

Name XXX is not bound in this Context

让人郁闷死,排错了好久,而在action中一切都很正常,有谁知道为什么了给我说下,


这里我找了一种解决问题的方法给大家分享:

private UserService userService;
	
	
	@Override 
    public void init(ServletConfig servletConfig) throws ServletException { 
        super.init(servletConfig); 
        WebApplicationContext webApplicationContext = WebApplicationContextUtils.getWebApplicationContext(servletConfig.getServletContext()); 

        userService=(UserService) webApplicationContext.getBean("userServiceImpl"); 
    }


这里不再运用注解注入业务bean,采取了传统了从spring容器中获取业务bean,有谁知道刚刚那种方法为什么不行,

麻烦跟我说下,万分感谢。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐