我想通過Spring 3 Portlet提供一種提供CSV下載的方法。我有一種方法使用@ResourceMapping
註釋來定義一個處理程序,它以@ModelAttribute
的形式生成一些報告參數,並生成報告並將其返回。我遇到的catch-22正在驗證從客戶端表單發送來的參數。在Spring 3 portlet中從ResourceMapping重定向回Portlet
如果我使處理程序爲@ResourceMapping
,我可以設置標題並使用ResourceResponse
寫出報告,但我似乎無法弄清楚如何將用戶重定向到Portlet視圖時出現錯誤輸入未通過驗證。但是,如果我讓一個@ActionMapping
,我可以再檢查BindingResult
S和需要它們轉發回的形式,但ActionResponse
不允許我設置Content-Disposition頭,也沒有寫出來的CSV字節,這是對發送報告至關重要。
我在這裏完全損失,因爲我甚至不知道我的選擇是什麼。是否有可能做我想用Portlet做的事情?是否還有其他示例可供我們研究可能的解決方法?
我給你點頭,因爲這是一個很好的解決方案。但是,我選擇了使用AJAX調用進行驗證的不同路由,然後在驗證輸入時再次調用AJAX來獲取CSV。但是,iframe是我沒有想到的一個想法。 – CodeChimp