2013-07-16 43 views
10

Tôi đang cố gắng chuyển hướng mà không có tham số nào được thêm vào url của tôi. Ý tôi là sau khi chuyển hướng, url của tôi trông giống như sau: .../success /? Param1 = xxx & param2 = xxx.Spring 3.0 MVC: Chuyển hướng mà không có tham số được thêm vào url của tôi

Vấn đề này là chính xác giống như này Spring MVC Controller: Redirect without parameters being added to my url

Câu trả lời https://stackoverflow.com/a/16841663/384984 là những gì tôi đang tìm (ignoreDefaultModelOnRedirect). Vấn đề là tôi đang sử dụng Spring 3.0. Làm thế nào tôi có thể giải quyết nó với phiên bản Spring này?

Trả lời

23
  1. Bạn chỉ cần xóa bản đồ Model trong phương thức Controller của mình trước khi chuyển hướng.

    model.asMap().clear(); 
    return "redirect:" + yourURL; 
    
  2. Không hiển thị thuộc tính mô hình.

    RedirectView view = new RedirectView(yourURL, true); 
    view.setExposeModelAttributes(false); 
    return new ModelAndView(view); 
    
  3. Hope this link giúp bạn trong việc tìm kiếm một giải pháp tốt hơn, đặc biệt điểm (4) HandlerInterceptor cho dữ liệu tham chiếu chung trong toàn bộ ứng dụng web

+1

model.asMap() clear(). đã làm những gì tôi muốn. Cảm ơn – Federico

+1

Tôi tin rằng bạn không nên có tiền tố "chuyển hướng:" trong những gì bạn đang chuyển đến hàm tạo RedirectView; vì lý do rõ ràng. :) –

+0

Số 2 hoạt động hoàn hảo cho tôi! :) – Paulo

Các vấn đề liên quan