我需要帮助。
当 ModelAndView 从不同的方法调用 get 方法时,不执行 Post 方法。
mapping2 的 Get 方法正确填充了数据(取自 ModelAttribute),但是当我按下表单提交按钮时,它没有执行 mapping2 的 post 方法。它一直在运行 GET 方法。
url是mapping1,并没有变成mapping2,只是mapping2的jsp显示为mapping1的内容。
你知道如何运行 post 方法吗?
下面控制器的代码。
@RequestMapping(value = "/mapping1", method = RequestMethod.POST)
public ModelAndView addItem(
@RequestParam(value = "year", required = true) final BigDecimal year,
@ModelAttribute("item") final Item item,
final HttpServletRequest request) {
ModelAndView mav = new ModelAndView("mapping2");
mav.addObject("item", item);
return mav;
}
@RequestMapping(value = "/mapping2", method = RequestMethod.GET)
public Item addItemConfirmation(
@ModelAttribute("item") final Item item,
final HttpServletRequest request) {
return item;
}
@RequestMapping(value = "/mapping2", method = RequestMethod.POST)
public String addItemConfirmation(
@ModelAttribute("Item") final Item item,
final HttpServletRequest request) {
operations on item...
itemDAO.persist(item);
return "redirect:/itemAddSuccess
}