Веб-приложения Spring имеют два контекста - веб-контекст (дочерний) и корневой контекст (родительский). Если компоненты @Controller
определены в dispatcher-servlet.xml
(веб-контекст), все в порядке.
Но если компоненты контроллера определены в родительском контексте ( applicationContext.xml
), тогда контроллеры не распознаются - т.е. их сопоставления не настроены, поэтому при попытке открыть / foo / bar
, определенный в таком контроллере, путь не найден.
Вопрос в том, как сделать так, чтобы сопоставления контроллеров анализировались независимо от того, где определены bean-компоненты.
P.S. Я знаю, что могу переместить объявления в дочерний контекст, но я не хочу этого делать по причинам, выходящим за рамки этого вопроса.