2013-07-16 11 views
10

Próbuję przekierować bez dodawania parametrów do mojego adresu URL. Mam na myśli po przekierowaniu, mój adres URL wygląda następująco: .../success /? Param1 = xxx & param2 = xxx.Wiosna 3.0 MVC: Przekierowanie bez dodawania parametrów do mojego adresu URL

Ten problem jest dokładnie taki sam jak ten Spring MVC Controller: Redirect without parameters being added to my url

odpowiedzi https://stackoverflow.com/a/16841663/384984 jest to, czego szukam (ignoreDefaultModelOnRedirect). Problem polega na tym, że używam Spring 3.0. Jak mogę rozwiązać to w tej wersji Spring?

Odpowiedz

23
  1. można po prostu usunąć mapę Model w swojej metodzie Controller przed przekierowaniem.

    model.asMap().clear(); 
    return "redirect:" + yourURL; 
    
  2. Nie wystawiaj w ogóle atrybutów modelu.

    RedirectView view = new RedirectView(yourURL, true); 
    view.setExposeModelAttributes(false); 
    return new ModelAndView(view); 
    
  3. Nadzieja this link pomaga w znalezieniu lepszego rozwiązania, szczególnie punkt (4) HandlerInterceptor do wspólnych danych referencyjnych w obrębie całej aplikacji internetowej

+1

model.asMap (jasne) (.); zrobiłem dokładnie to, co chciałem. Dzięki – Federico

+1

Wierzę, że nie powinieneś mieć tego prefiksu "przekierowania:" w tym, co przekazujesz do konstruktora RedirectView; z oczywistego powodu. :) –

+0

Numer 2 działał idealnie dla mnie! :) – Paulo

Powiązane problemy