私は、SimpleFormControllerからコントローラインタフェース(コントローラインタフェースを実装するコントローラ)にSpring MVCでコマンドオブジェクトを渡す必要があります。 Springのバージョンは2.5で、設定はXMLベースです。SimpleFormControllerからコントローラへのコマンドオブジェクトの受け渡し
SimpleFormControllerから、コントローラにリダイレクトが行われています。しかし、コントローラが指すjspにsession = "true"を追加したにもかかわらず、$ {command.myVal}の呼び出しはnullを返します。
SimpleFormControllerでリダイレクトコードは次のとおりです。SimpleFormControllerについては
return new ModelAndView("redirect:/SimpleController.do");
、sessionFormプロパティはこの問題を解決するにはspring.xml
<property name="sessionForm"><value>true</value></property>
でtrueに設定されている、私は明示的に追加する必要がありましたHttpSessionへのSimpleFormControllerのコマンドオブジェクト:
HttpSession session = request.getSession(true);
session.setAttribute("command", commandObj);
SimpleControllerではObjへのStringのMapを作成し、それをViewに渡さなければなりませんでした。ここでもまた、セッションからコマンドObjを受け取りました。
HttpSession session = request.getSession(true);
resultMap.put("command", session.getAttribute("command"));
注釈を使用しない方が良い方法があるかどうかをご提案ください。これはどういうわけか、結果を得るために長らく残っているようです。
を助け、私たちにリダイレクトコードをご提示ください。 –
コマンドオブジェクトはセッションに格納されていますか?そうでない場合、その状態はリダイレクトから生き残ることはありません。 – GriffeyDog
SimpleFormControllerのSessionFormはtrueです。 true –