Java 在Spring中停止HTTP请求超时
我有一个应用程序,我正在从中生成Jasper报告。但是,当我请求生成报告时,应用程序生成报告所需的时间相当长,因为报告的数据集非常大(约10万行) 因此,当报告成功生成时,HTTP请求超时,报告永远不会下载 我怎样才能防止这种情况发生Java 在Spring中停止HTTP请求超时,java,spring,tomcat,servlets,jasper-reports,Java,Spring,Tomcat,Servlets,Jasper Reports,我有一个应用程序,我正在从中生成Jasper报告。但是,当我请求生成报告时,应用程序生成报告所需的时间相当长,因为报告的数据集非常大(约10万行) 因此,当报告成功生成时,HTTP请求超时,报告永远不会下载 我怎样才能防止这种情况发生 该应用程序是用Spring 3.0、Hibernate和JasperReports构建的。我猜您的会话将在20分钟后过期,请尝试编辑tomcat6/webapps/jasperserver/WEB-INF/WEB.xml <session-config>
该应用程序是用Spring 3.0、Hibernate和JasperReports构建的。我猜您的会话将在20分钟后过期,请尝试编辑
tomcat6/webapps/jasperserver/WEB-INF/WEB.xml
<session-config>
<!-- Default to 20 minute session timeouts -->
<session-timeout>120</session-timeout>
</session-config>
120
还可以使用“在后台运行”(右键单击),它会像保存计划一样为您保存输出
您可以查看
tomcat6/webapps/jasperserver/WEB-INF/logs/jasperserver.log
,查看任何错误消息。快速解决方案是在Http请求中添加超时参数
更清洁的解决方案是:
- 用一个Ajax请求开始报告生成(使用spring调度程序安排立即执行)
- 从浏览器轮询以检查报告的状态;完成后,提交报告