Кто-нибудь знает, почему, по-видимому, невозможно использовать АОП с аннотированными контроллерами MVC? (см. Пост ). У меня есть @Controller, который перестает работать, как только я добавляю к нему pointcut. Проблема не в том, что перехватчик не вызывается, а в том, что @Controller просто перестает работать (в журнале вы можете видеть, что вместо «Mapped URL path [/ xx] on handler 'Yyy'») вы получаете «no URL пути определены ").
Я знаю, что существует механизм для добавления перехватчиков к контроллерам с помощью handlerMapping, но мой вопрос касается перехватчиков АОП. Разве аннотированные контроллеры не являются просто pojos в контейнере Spring, как любые другие pojo? В чем разница? Почему?
@Controller
@RequestMapping("/user")
public class RestTestImpl implements RestTest {
@RequestMapping(value="/", method={RequestMethod.GET})
public @ResponseBody String deleteUsers(String arg) {
return "Xxxxx";
}
}
В моем servlet-Context у меня есть:
. . .
И все работает просто отлично.
Но когда я добавляю:
Контроллер перестает быть контроллером (нет ошибок, просто он перестает связываться с указанным URL)!