我想通过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