Попробуйте это:
@RequestMapping(params = {"action=nuovoprodotto","action=salvaprodotto"})
Атрибут params
на самом деле имеет тип String[]
, но аннотации позволяют писать String
вместо одного элемента String[]
, поэтомудва эквивалентны:
@RequestMapping(params = {"action=nuovoprodotto"})
и
@RequestMapping(params = "action=nuovoprodotto")
Ссылка:
Обновление: плохо, как вы можете прочитать в разделе Расширенные параметры @RequestMapping , несколько параметров объединяются с использованием и, а не или, поэтому он не может работатькак указано выше.
Итак, я бы сказал, что вам нужно создать псевдоним с почти такой же сигнатурой:
@RequestMapping(params = "action=nuovoprodotto")
public ModelAndView nuovoProdotto(
@RequestParam(value = "page", required = false, defaultValue = "-1") int page,
@RequestParam(value = "action") String action,
@ModelAttribute Prodotto prod, HttpSession session)
throws Exception {
// some stuff here
}
@RequestMapping(params = "action=salvaprodotto")
public ModelAndView salvaProdotto(
@RequestParam(value = "page", required = false, defaultValue = "-1") int page,
@RequestParam(value = "action") String action,
@ModelAttribute Prodotto prod, HttpSession session)
throws Exception {
return nuovoProdotto(page, action, prod, session);
}