grails - 使用Grails中的Jasper服务在浏览器中编写PDF报告

标签 grails jasper-reports jasper-plugin

我正在使用Grails 2.1.1。我正在i-report中设计报告,并使用jasper插件1.10.0生成报告。当我生成PDF报告时,它会在Adobe Reader中显示,但是我想在浏览器中编写它。我不想只使用Jasper Controller Jasper服务。

到目前为止,以下是我已经理解的尝试。

我的报告产生作用

def reportDef = new JasperReportDef(name: jasperName, parameters: parameters, fileFormat: JasperExportFormat.PDF_FORMAT)
response.reset();
response.setContentType("application/pdf");
response.setHeader("Content-disposition", "inline; filename=\"" + fileName + ".pdf\"");
response.outputStream << jasperService.generateReport(reportDef).toByteArray()
response.outputStream.flush()
return;

最佳答案

我认为都是由于内容类型。您已使用response.setContentType("application/pdf");
代替这个,你可以使用response.setContentType("application/octet-stream");

关于grails - 使用Grails中的Jasper服务在浏览器中编写PDF报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29455977/

相关文章:

grails - Grails 3.3.3和3.3.4有什么区别?

java - 在 Grails 中使用正则表达式进行密码验证

MYSQL SUM() 总分

jasper-reports - 如何在 Jasper 报告中创建可编辑的 PDF 字段

java - JasperReports 不适用于 Grails 2.4 : Could not initialize class net. sf.jasperreports.engine.xml.JRXmlDigesterFactory

grails - 未封闭的gsp表达式,空指针,即使不是

java - Grails清理离开java进程

jasper-reports - 如何获得总行数?

grails - Jasper Report插件在Grails 2.4.2中生成PDF

jsp - Gradle插件Jasper jspc可以预编译jsps