stanley stanley - 1 month ago 29
Java Question

Jasper report exports empty data in PDF format when there is more data

I have a report to be exported in excel, pdf and word using jasper reports. I use xml file as the DataSource for the report, but when the data increases jasper report exports empty file in only for PDF format, when i reduce the data content it export the data available correctly. is there any limitation to pdf size? , how can we manage the size in jasper reports from java?

My jrxml is really big, so i cannot add it here, i have added my java code which i use to export the content:

JRAbstractExporter exporter = null;
if (format.equals("pdf")) {
exporter = new JRPdfExporter();
jasperPrint.setPageWidth(Integer.parseInt(pWidth));
} else if (format.equals("xls")) {
exporter = new JRXlsExporter();

} else if (format.equals("doc")) {
jasperPrint.setPageWidth(Integer.parseInt(pWidth));
}
exporter.setParameter(JRExporterParameter.JASPER_PRINT,
jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM,
outputStream_);
exporter.exportReport();
contents = outputStream_.toByteArray();
response.setContentType("application/" + format);
response.addHeader("Content-disposition",
"attachment;filename=" + name.toString() + "." + format);

Answer

Try setting the content length:

response.setContentLength(outputStream_.toByteArray().length)

See if this resolves your problem.