Внедрение зависимостей внутри реализации HttpSessionListener

Проблема: Эта введенная зависимость всегда будет возвращать 0 изSimpleController

Почему контекст теряется для этого компонента при попытке внедрения зависимости в реализацию HttpSessionListener?Какие принципы стоят за этим, я пропускаю / путаю, чтобы это не сработало?Как это исправить?

Проект на GithubИсточник проекта webApp

Учтите следующее:

SessionCounterListener

public class SessionCounterListener implements HttpSessionListener {

  @Autowired
  private SessionService sessionService;

  @Override
  public void sessionCreated(HttpSessionEvent arg0) {
    sessionService.addOne();
  }

  @Override
  public void sessionDestroyed(HttpSessionEvent arg0) {
    sessionService.removeOne();
  } 
}

web.xml


    
        com.stuff.morestuff.SessionCounterListener
    


applicationContext.xml



   
   


Обслуживание:SessionService

@Service
public class SessionService{

  private int counter = 0;

  public SessionService(){}

  public void addOne(){
    coutner++;
  }

  public void removeOne(){
    counter--;
  }

  public int getTotalSessions(){
     return counter;
  }

}

контроллер:SimpleController

@Component
public SimpleController
{
  @Autowired
  private SessionService sessionService;

  @RequestMapping(value="/webAppStatus")
  @ResponseBody
  public String getWebAppStatus()
  {
     return "Number of sessions: "+sessionService.getTotalSessions();
  }

}

Ответы на вопрос(2)

Ваш ответ на вопрос