Реализация ApplicationContextAware
и введение ApplicationContext
работы.Так что это путь.Вы должны выяснить, какая еще проблема не позволяет ей работать (как она вообще не работает?)
Например, убедитесь, что вы не создали экземпляр класса обслуживания с помощью оператора new
.
Кстати, вы не можете и не должны получать дочерний контекст приложения (определяемый dispatcher-servlet) на уровне сервиса.Это означает, что родитель будет знать о дочерних контекстах - а это не так.Таким образом, вы нарушаете границы слоя.Подумайте о другом способе решения этой задачи - например, вставьте контекст в контроллер (он должен работать там), а затем передайте нужные аргументы службе.