Когда вы добавляете <mvc:annotation-driven />
в вашу конфигурацию, он заменяет набор сопоставлений обработчиков и адаптеров обработчиков по умолчанию, и по умолчанию использовались контроллеры старого стиля.
У вас есть 2 варианта. Первое, что нужно попробовать, это удалить <mvc:annotation-driven />
. Вы все еще можете использовать аннотированные контроллеры без этого. Он добавляет дополнительные функции, такие как поддержка Jackson JSON, но если вам не нужны эти дополнительные функции, то вам это не нужно. Поэтому попробуйте ваше приложение без <mvc:annotation-driven />
и посмотрите, работает ли оно по-прежнему.
В противном случае вы можете восстановить сопоставления и адаптеры для ваших старых контроллеров. Вы не сказали, как ваши контроллеры раньше отображали свои URL, но попробуйте добавить их в вашу конфигурацию:
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<bean class="org.springframework.web.servlet.handler.ControllerClassNameHandlerMapping"/>
Если вы использовали SimpleUrlHandlerMapping
, то это должно работать уже.
Вам также необходимо добавить HandlerAdapter
обратно в:
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
Не добавляйте это вслепую. Попробуйте их по отдельности и посмотрите, каков минимальный набор для того, чтобы ваши старые контроллеры работали вместе с новыми.