Узкая проблема с контроллером на основе аннотаций Spring MVC и @RequestMapping - PullRequest
7 голосов
/ 20 мая 2009

Рассмотрим этот Spring MVC Controller:

@Controller
@RequestMapping("/test*")
public class TestController {

  @RequestMapping(method = RequestMethod.GET)
  public void doStuff(Model model){
    ...
  }

  @RequestMapping(params = "myParam")
  public void doStuff(@RequestParam("myParam") int myParam, Model model){
    ...
  }

}

Когда я помещаю это в свой браузер:

mySite.com/test.html?myParam=1

Я ожидал AmbiguousHandlerMappingException или чего-то еще, поскольку оба метода, похоже, соответствуют URL.

Но на самом деле первый метод был вызван. Кто-нибудь знает почему?

1 Ответ

5 голосов
/ 20 мая 2009

Это пахнет как ошибка. Если вы добавляете method = GET ко второму обработчику, он работает как положено, так что это обходной путь.

Я отправил сообщение об ошибке, надеюсь, оно будет исправлено.

http://jira.springframework.org/browse/SPR-5772

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...