首页 > 解决方案 > ModelAndView 不改变视图

问题描述

    @RequestMapping(value = { "postCustomer" }, consumes = "application/json", method = {RequestMethod.POST})
    public ModelAndView postHome(@RequestBody JSONObject body, Model model) throws JSONException {
        ModelAndView mav = new ModelAndView("redirect:/feasibility");       
        return mav;
    }
    @GetMapping(value = { "feasibility" }) // GET MAPPING
    public String feasibility(ModelAndView model) throws Exception {
        return "feas";
    }

我正在尝试将用户转发/重定向到一个新的 JSP 文件,我可以转到<url>/feasibility它并更新它,但是当我 POSTpostCustomer时它不会重定向或更新视图。我还尝试ModelAndView使用 JSP“feas”创建一个并在其中返回它,postCustomer但这也不起作用。我不确定我是否遗漏了一些明显的东西,或者我是否必须执行额外的步骤来更新视图。

如果有人有任何建议或解决方案,我将不胜感激。

标签: springspring-bootspring-mvcjspmodelandview

解决方案


重定向将被视为新请求尝试转发请求

重定向和转发不是一回事

    @RequestMapping(value = { "postCustomer" }, consumes = "application/json", method = {RequestMethod.POST})
public ModelAndView postHome(@RequestBody JSONObject body, Model model) throws JSONException {
    ModelAndView mav = new ModelAndView("forward:/feasibility");
    //data to forward
    mav.addAttribute("data", data);
    return mav;
}

推荐阅读