Я не понимаю, как работает DefaultAnnotationHandlerMapping.
В моем web.xml у меня есть
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/somePath/someWork</url-pattern>
<url-pattern>/users</url-pattern>
<url-pattern>/user/*</url-pattern>
</servlet-mapping>
У меня такой контроллер,
@RequestMapping(value="/user/adduser", method={RequestMethod.POST})
public void addAdmin(@ModelAttribute("myData") myData data) {
System.out.println("We reached adduser controller");
}
И в файле JSP у меня есть
<form:form id="adduser" method="post" action="/user/adduser" commandName="myData">
Это не работает.Я получаю сообщение об ошибке: не найдено сопоставление обработчика для "/ adduser" и 404 для страницы "/ user / adduser"
Но в XML-файле, если я упоминаю
<url-pattern>/user/adduser</url-pattern>
, это работаетили, если я сделаю контроллер как,
@RequestMapping(value="/adduser", method={RequestMethod.POST})
также работает.При отправке страницы она достигает правильного контроллера.
Теперь я запутался, как работает @ReuqestMapping.Когда приходит запрос типа «/ user / adduser», откуда он начинает искать правильный класс и правильный метод?