Java Spring Boot Jasper报告空白PDF

Java Spring Boot Jasper报告空白PDF,java,spring,spring-boot,jasper-reports,Java,Spring,Spring Boot,Jasper Reports,我有一个web应用程序。我使用SpringBoot 1.3.3、AngularJS和Jasper5.6.0。当我试图下载jasper报告时,我得到了一个空白的PDF页面。我的代码是: String jasperAdi = "yillikPlan.jasper"; StringBuffer pathMain = new StringBuffer(); pathMain.append(this.getClass().getResource("/static/jasper").getPath());

我有一个web应用程序。我使用SpringBoot 1.3.3、AngularJS和Jasper5.6.0。当我试图下载jasper报告时,我得到了一个空白的PDF页面。我的代码是:

String jasperAdi = "yillikPlan.jasper";
StringBuffer pathMain = new StringBuffer();
pathMain.append(this.getClass().getResource("/static/jasper").getPath());
String jasperFileName = pathMain.toString() + File.separator + jasperAdi;
File jasperFile = new File(jasperFileName);
JasperReport report = (JasperReport) JRLoader.loadObject(jasperFile);
JasperPrint jasperPrint = JasperFillManager.fillReport(report, param, new JRBeanCollectionDataSource(ckModelList));
if (jasperPrint != null) {
    byte[] pdfReport = JasperExportManager.exportReportToPdf(jasperPrint);
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.parseMediaType("application/pdf"));
    headers.setContentDispositionFormData("yillikPlan.pdf", "yillikPlan.pdf");
    ResponseEntity<byte[]> respon = new ResponseEntity<byte[]>(pdfReport, headers, HttpStatus.OK);
    return respon;

}
String jasperAdi=“yillikPlan.jasper”;
StringBuffer pathMain=新的StringBuffer();
append(this.getClass().getResource(“/static/jasper”).getPath());
字符串jasperFileName=pathMain.toString()+File.separator+jasperAdi;
文件jasperFile=新文件(jasperFileName);
JasperReport report=(JasperReport)JRLoader.loadObject(jasperpile);
JasperPrint JasperPrint=JasperFillManager.fillReport(报告,参数,新的JRBeanCollectionDataSource(ckModelList));
如果(jasperPrint!=null){
字节[]pdfReport=jaspeexportmanager.exportReportToPdf(jasperPrint);
HttpHeaders=新的HttpHeaders();
headers.setContentType(MediaType.parseMediaType(“application/pdf”);
headers.setContentDispositionFormData(“yillikPlan.pdf”、“yillikPlan.pdf”);
ResponseEntity respon=新的ResponseEntity(pdfReport、headers、HttpStatus.OK);
返回响应;
}
我的jasper文件位置是/static/jasper。ckModelList是一个java.util.List。param是一个Hashmap,我推送报告参数。

我如何解决这个问题


当我尝试在Spring Boot应用程序中开始使用jasper时,我也遇到了同样的问题,但它与我的java代码没有任何问题,只是报告的属性“when no Data type”。我只是在测试,所以我没有任何数据,只有一个标签。我花了几个小时才意识到这一点

如果你在理解我的“提高”英语方面有任何问题,请告诉我,我会尽力更好地解释


您是否尝试过调试?数据源是否正常?是的,我尝试调试。我的数据源还可以@阿列克斯基也面临同样的问题。你解决了吗?@tranceholic不,我没有解决这个问题。