私はSpring 3.1を使用しています。私はいくつかの処理をFORM経由して提出したコマンド・オブジェクト(データ保持)を取り込んでいコントローラ機能を持っている:Spring-MVC 3.1:あるコントローラ関数から別のコントローラ関数へのリクエストの転送
@RequestMapping(value = "/results", method = RequestMethod.POST)
public String toResultsScreen(@ModelAttribute("ssdh") SearchScreenDataHolder ssdh,
BindingResult bindingResult,
ModelMap model,
HttpSession session) {
if (bindingResult.hasErrors()) {
logger.debug("Error returning to /search screen");
return "search";
}
netView = "results";
// do stuff
return nextView;
} // end function
一部のユーザーがプログラムGETリンクが出て、サイトから情報を得るために、私は希望したいと思い
そのリクエストを処理する別のハンドラを設定するのが好きです。これは、コマンドオブジェクト(ssdh)の新しいインスタンスを作成し、GET要求を介して送信されたパラメータでそれを設定します。それはそれを上のハンドラに渡します。このような何か:
@RequestMapping(value = "/pubresult")
public String toPublicResultsScreen(ModelMap model,
HttpSession session,
@RequestParam (required=true) String LNAME,
@RequestParam (required=false)String FNAME){
Search search = new Search(usertype);
// Capture the search parameters sent by HTTP
ssdh.setLast_name(LNAME);
ssdh.setFirst_name(FNAME);
// To Do: "forward this data holder, ssdh to the controller function quoted first
return nextView;
} // end function
私の質問はどのように私はどのような方法で最初のコントローラfuncitonにコードを変更する必要がないように、第1のコントローラ機能に私の命令/データホルダーオブジェクトを転送することができますか?
+1グレートは、あなたが提供しているdanny.lesnikリンクhttp://www.tikalk.com/java/redirectattributes-new-feature-spring-mvc-31 @たくさん – Jayanth
が壊れている私を助けました。ワーキングリンクでこれを更新しますか? – OO7
なぜこのイベントをフォワードで行う必要がありますか? – FelipeKunzler