ModelandView不起作用

时间:2016-07-06 12:15:53

标签: spring-mvc

我创建了注册控制器。一切正常,用户在数据库中创建,但最终服务程序不会转到successRegister视图。我不知道为什么。如果我像String一样返回成功注册一切正常。

@RequestMapping(value = "/add", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
    public ModelAndView registerUserAccount(@RequestBody @Valid User accountDto,
                                            BindingResult result, WebRequest request, Errors errors) {
        if (result.hasErrors()) {
            return new ModelAndView("successRegister", "User", accountDto);
        }

        User registered = userService.register(accountDto);
        if (registered == null) {
            result.rejectValue("email", "message.regError");
        }
        try {
            String appUrl = request.getContextPath();
            eventPublisher.publishEvent(new OnRegistrationCompleteEvent
                    (registered, request.getLocale(), appUrl));
        } catch (Exception me) {
            return new ModelAndView("successRegister", "User", accountDto);
        }
        return new ModelAndView("successRegister");
    }

2 个答案:

答案 0 :(得分:0)

AJAX存在问题。我成功后改变了位置,然后ModelAndView没有返回。

答案 1 :(得分:0)

你的问题在于

  

produce = MediaType.APPLICATION_JSON_VALUE

你说生成一个JSON响应,但事实并非如此,你想要返回一个ModelAndView,所以尝试删除该属性