我开发了一个使用JasperReports的Web应用程序。我注意到报告正在打印服务器端。
如何使报表打印客户端(从Web浏览器)?
任何见解都会有所帮助。
答案 0 :(得分:1)
假设您有一个基于Servlet的架构:
HttpServletResponse
(例如)获取HttpServletResponse response = this.getThreadLocalResponse();
实例的句柄。HttpServletResponse response = getServletResponse(); response.setHeader( "Content-Description", "File Transfer" ); response.setHeader( "Content-Disposition", "attachment; filename=" + "report.pdf" ); response.setHeader( "Content-Type", "application/pdf" ); response.setHeader( "Content-Transfer-Encoding", "binary" );
JRExporter
(jre)以使用HttpServletRespone的输出流: jre.setParameter( JRExporterParameter.OUTPUT_STREAM, getOutputStream() );
浏览器将提示用户将报告另存为PDF文件。用户可以打印PDF。