не собирает мои @RequestMappings, если сопоставления обработчиков определены в XML

Я использую Spring 3.0.5 с аннотациями и @RequestMapping на моих контроллерах. Это работает, и URL-адреса регистрируются сканированием пакетов.

Но возникает проблема, когда у меня есть отображение обработчика, определенное в конфигурации XML. Аннотации @RequestMapping больше не поддерживаются.

Я выделил проблему простому приложению.

Если у меня следующий контроллер:

package test.pack.age;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class TestController {
    @RequestMapping(value="/test")
    public String showTestPage() {
        return "testPage";
    }
}

и следующая конфигурация:

<context:component-scan base-package="test.pack.age" />
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
  <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
  <property name="prefix" value="/WEB-INF/jsp/" />
  <property name="suffix" value=".jsp" />
</bean>

Приложение работает правильно, а URL-адрес / test зарегистрирован и работает правильно.

18/09/2011  20:02:55    org.springframework.web.servlet.handler.AbstractUrlHandlerMapping   INFO    Mapped URL path [/test] onto handler 'testController'
18/09/2011  20:02:55    org.springframework.web.servlet.handler.AbstractUrlHandlerMapping   INFO    Mapped URL path [/test] onto handler 'testController'

Но если я добавлю отображение обработчика в XML, он перестанет работать. Даже что-то простое вроде этого:

<bean id="handlerMappings" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping" />

, который в основном ничего не делает, а больше не регистрирует мой URL.

Мне нужно дополнительное отображение обработчика для некоторых (сторонних) контроллеров, которые я не могу аннотировать, но при его добавлении ломаются все мои @RequestMapping s.

Это нормально? Жук? (Я не могу изменить версию Spring)

Я что-то упустил?

5
задан ElenaT 18 September 2011 в 17:30
поделиться