Я знаю, что в автономном приложении я создаю один из экземпляров контекста приложения, который, в свою очередь, создает компоненты из файлов conf. Но я не вижу такого кода в отправляемом сервлете. Как же тогда бины создаются в веб-приложении?
ContextLoaderListener создает ApplicationContext (путем делегирования ContextLoader) и сохраняет его в контексте сервлета.
ContextLoaderListener
ApplicationContext
ContextLoader
Таким образом, вы должны сопоставить ContextLoaderListener с <listener> в web.xml
<listener>
web.xml
Тогда, конечно, ApplicationContext (в данном случае WebApplicationContext) создает бины.
WebApplicationContext