2013-07-16 5 views
10

URLにパラメータを追加せずにリダイレクトしようとしています。リダイレクト後、私のURLは次のようになります:.../success /?param1 = xxx & param2 = xxx。Spring 3.0 MVC:URLにパラメータを追加せずにリダイレクト

この問題は、応答https://stackoverflow.com/a/16841663/384984このSpring MVC Controller: Redirect without parameters being added to my url

とまったく同じであるが、私は(ignoreDefaultModelOnRedirect)探していますものです。問題は私がSpring 3.0を使用していることです。このSpringバージョンでどうすれば解決できますか?

答えて

23
  1. あなたは、単にリダイレクトする前に、あなたのController方法でModelマップをクリアすることができます。

    model.asMap().clear(); 
    return "redirect:" + yourURL; 
    
  2. モデルの属性をまったく公開しないでください。

    RedirectView view = new RedirectView(yourURL, true); 
    view.setExposeModelAttributes(false); 
    return new ModelAndView(view); 
    
  3. 希望this linkは()をクリアmodel.asMap()

+1

全体のWebアプリケーション内で共通の基準データ用(4)HandlerInterceptor特別ポイント、よりよい解決策を見つけるのに役立ちます。私が望んでいたことをexaclyしました。ありがとう – Federico

+1

RedirectViewのコンストラクタに渡すものに "redirect:"という接頭辞を付けるべきではないと思います。明らかな理由から。 :) –

+0

2番は私にとって完璧に機能しました! :) – Paulo

関連する問題