Problema com injeção no Filtro de Acesso [Resolvido]

E ai galera tudo bem??

Estou com um probleminha aqui, o spring não está injetando a dependência do meu BusinessService ;s

Já tentei anotalo como @Component mas ate agora nada de solução…

Segue o filtro:


public class AccessFilter implements Filter {

	@Autowired
	private IUserService userService;

	@Override
	public void init(FilterConfig filterConfig) throws ServletException {}

	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		HttpSession session = ((HttpServletRequest) request).getSession();
		User user = (User) session.getAttribute(SessionAtributte.USER.getValue());

		String url = ((HttpServletRequest) request).getRequestURI();
		Screen screen = Screen.getScreenOf(url.substring("/intuits".length(), url.indexOf(".")));

		if(user == null) {
			// you shall not pass!
		} else if (screen == null) {
			// 404 error
		} else if (Screen.MAIN == screen) {
			chain.doFilter(request, response);
		} else {
			Permission permission = this.userService.getPermissionOfFunctionality(user.getId(), Functionality.getFunctionality(screen));
			
			if (permission != null) {
				chain.doFilter(request, response);
			} else {
				// you shall not pass!
			}
		}
	}

	@Override
	public void destroy() {}

}

Se alguem puder ajudar agradeço demais!!

Att.
:slight_smile:

Resolução:

@WebFilter(filterName = "AcessFilter", urlPatterns = "/pages/*", dispatcherTypes = { DispatcherType.FORWARD, DispatcherType.INCLUDE, DispatcherType.REQUEST })
public class AccessFilter implements Filter {

	@Autowired
	private IUserService userService;

	@Override
	public void init(FilterConfig filterConfig) throws ServletException {
		ServletContext servletContext = filterConfig.getServletContext();

		WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);

		userService = (IUserService) wac.getBean("userService");
	}
}