我正在使用Grails 2.1.1。我在i-report中设计报告并生成它我正在使用jasper插件1.10.0。当我生成PDF报告时,它正在使用Adobe Reader显示,但我想在浏览器中编写它。我不想只使用Jasper控制器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;
答案 0 :(得分:0)
我认为这完全归功于内容类型。您已使用response.setContentType("application/pdf");
而不是这个,你可以使用
response.setContentType("application/octet-stream");