Spring 3.1で登場したRedirectAttibutesプロパティを使用したいのですが、コントローラーに投稿するための次のハンドラーメソッドがあります
@RequestMapping(value = "/register", method = RequestMethod.POST)
public String register(@ModelAttribute("admin") Admin admin, BindingResult bindingResult, SessionStatus sessionStatus, RedirectAttributes redirectAttributes) {
redirectAttributes.addAttribute("admin", admin);
if (bindingResult.hasErrors()) {
return REGISTRATION_VIEW;
}
sessionStatus.setComplete();
return "redirect:list";
}
ただし、フォームを送信すると、次の例外が発生します。
java.lang.IllegalStateException: Argument [RedirectAttributes] is of type Model or Map but is not assignable from the actual model. You may need to switch newer MVC infrastructure classes to use this argument.
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:322)
ModelAndViewをリターンタイプとして使用できないredirectAttributesに関するいくつかの落とし穴に遭遇しました。だから私は文字列ビューだけを返しました。
誰でもplできますか。どこが間違っているのか教えてください。
ありがとう。