打印JasperReports客户端?

时间:2011-01-14 18:49:13

标签: reporting jasper-reports

我开发了一个使用JasperReports的Web应用程序。我注意到报告正在打印服务器端。

如何使报表打印客户端(从Web浏览器)?

任何见解都会有所帮助。

1 个答案:

答案 0 :(得分:1)

假设您有一个基于Servlet的架构:

  1. 使用HttpServletResponse(例如)获取HttpServletResponse response = this.getThreadLocalResponse();实例的句柄。
  2. 设置各种标题以指示文件附件。
    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" );
    
  3. 配置JRExporter(jre)以使用HttpServletRespone的输出流:
        jre.setParameter( JRExporterParameter.OUTPUT_STREAM, getOutputStream() );
    
  4. 执行报告。
  5. 浏览器将提示用户将报告另存为PDF文件。用户可以打印PDF。

相关问题