Hello stackoverflow论坛会员。我需要你的一些支持来生成excel报告,然后一键下载。
我正在使用extjs 4.0.2a和Java。在java框架中如Hibernate / JPA和Spring。我正在使用Jasper Report以excel和pdf生成报告。我能够使用它生成报告。但问题是我无法在浏览器中下载它。此外,我的浏览器没有提示我保存或取消生成的报告。
我正在向服务器发出请求,要求使用:
生成Excel报告Ext.Ajax.request({url:'task/GetTaskReportXLS.action',
success:function(response,option){console.log("success");},
failure:function(response,option){console.log("failure");},
scope:this});
在我的服务器端,我正在生成带有响应参数的excel报告
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition","inline;filename=\"gantt.xls\"");
response.addHeader("Content-Disposition", "attachment");
当我单击导出按钮时,进程执行,并且作为我的firebug控制台上的响应,我得到标题:
Response Headers
Content-Disposition attachment
Content-Length 0
Content-Type application/vnd.ms-excel
Date Fri, 20 Jan 2012 10:00:49 GMT
Server Apache-Coyote/1.1
但我的下载提示仍未显示保存我的Excel报告。请帮我指出我在这里做错了什么。
我正在使用带有Java的extjs 4.0.2a mvc架构。
答案 0 :(得分:0)
由于您的成功功能,您无法获取文件。您只写日志而不做任何响应。 尝试 window.open( '任务/ GetTaskReportXLS.action')