我创建了注册控制器。一切正常,用户在数据库中创建,但最终服务程序不会转到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");
}
答案 0 :(得分:0)
AJAX存在问题。我成功后改变了位置,然后ModelAndView没有返回。
答案 1 :(得分:0)
你的问题在于
produce = MediaType.APPLICATION_JSON_VALUE
你说生成一个JSON响应,但事实并非如此,你想要返回一个ModelAndView,所以尝试删除该属性