Try this:
@RequestMapping(params = {"action=nuovoprodotto","action=salvaprodotto"})
The params
attribute is actually of type String[]
, but annotations let you write a String
in place of a single-element String[]
, so these two are equivalent:
@RequestMapping(params = {"action=nuovoprodotto"})
and
@RequestMapping(params = "action=nuovoprodotto")
Reference:
Update: my bad, as you can read in the section Advanced @RequestMapping options, multiple params are combined using and, not or, so it can't work as specified above.
So I'd say what you have to do is create an alias method with almost the same signature:
@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);
}
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…