0

我需要帮助。

当 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

}

4

0 回答 0