что использовать вместо JasperRunManager.runReportToPdf для создания отчета Excel? - PullRequest
2 голосов
/ 19 января 2012
byte[] bytes=JasperRunManager.runReportToPdf(reportFile.getPath(),resource,new  JRBeanCollectionDataSource(datalist)).

Я хочу вернуть байты, генерирующие отчет Excel

1 Ответ

1 голос
/ 19 января 2012

Вы должны использовать net.sf.jasperreports.engine.export.JRXlsExporter класс экспортера.

Образец для вывода результата в виде java.io.OutputStream:

JasperPrint JasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile);
ByteArrayOutputStream os = new ByteArrayOutputStream();

JRXlsExporter exporter = new JRXlsExporter();

exporter.setParameter(JRExporterParameter.JASPER_PRINT, JasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, os);

exporter.exportReport();     

Или вы можете установить RExporterParameter.OUTPUT_FILE_NAME параметр для получения файла в качестве результата.

...