Звучит подозрительно, что слушатель не работал на тебя. Это должно было сработать. Я предполагаю, что произошло то, что вы ожидаете, что ваши бины в области запросов будут вводить свои зависимости вне цикла запрос / ответ. Ну, этого не произойдет.
Так что вам лучше сделать одно из них:
- поместите аннотацию
@PostConstruct
на каждый боб и инициализируйте ее.
- зарегистрируйте
ServletRequestListener
, который срабатывает при каждом запросе
Если вы хотите, чтобы управляемый бин инициализировал что-то в масштабах приложения (кстати, это что-то):
- Создание управляемого компонента с областью действия
application
- Выполните инициализацию способом, аннотированным
@PostConstruct
Кстати, вы ошиблись, указав код инициализации JSP в конструкторе. Это должно было быть в методе init(..)
. (и вообще, вообще не должен был быть в JSP)
В качестве альтернативы вы можете использовать PhaseListener
(в faces-config.xml
), где лениво загружать настройки приложения.