我正在使用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/