Я решил свою проблему!
Оказывается, это не имеет ничего общего с порядком загрузки или с объявленным <mvc:annotation-driven/>
.
Я попытался развернуть свое веб-приложение на другом Tomcat, и, к моему удивлению, в журнале локального хоста есть трассировка стека. Методом проб и ошибок у меня был намек на то, что конфликт с <aop:config/>
. Но какой конкретно конфликт?
Тогда я увидел эту ошибку в файле журнала:
java.lang.ClassCastException: org.aspectj.weaver.ResolvedType$Array cannot be cast to org.aspectj.weaver.ReferenceType
Итак, у нас есть исключение. Я погуглил ту точную ошибку выше и нашел это: Spring 3: добавление вызывает ClassCastException
Похоже, у меня есть нить, и у меня точно такая же проблема. Поэтому я скачал aspectj-1.6.10.jar, но мне все еще не хватало класса. Тогда оказывается, что это должен быть aspectjweaver-1.6.9
Я все еще использовал очень старый аспект-ткач. У этого не было никакой версии на его имени. Задача решена. Дело закрыто.
Кстати, в качестве бонуса я вручную развернул элемент <mvc:annotation-driven/>
до его эквивалентного объявления xml:
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
<property name="order" value="0" />
</bean>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="webBindingInitializer">
<bean class="org.springframework.web.bind.support.ConfigurableWebBindingInitializer">
<property name="validator" ref="validator" />
</bean>
</property>
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter" />
<bean class="org.springframework.http.converter.StringHttpMessageConverter" />
<bean class="org.springframework.http.converter.FormHttpMessageConverter" />
<bean class="org.springframework.http.converter.xml.SourceHttpMessageConverter" />
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />
<bean id="conversion-service" class="org.springframework.format.support.FormattingConversionServiceFactoryBean" />
Они точно такие же, когда вы объявляете <mvc:annotation-driven/>
на основании того, что я исследовал.
Спасибо всем, кто помог мне.