jrpdfexporter jasperreport exportar example java jasper-reports export deprecated

exportar - jasperreport java example pdf



JasperReports 5.6: JRXlsExporter.setParameter está en desuso (3)

Aquí está mi CÓDIGO:

String sourceFileName = "./jasper_report_template.jasper"; Map parameters = new HashMap(); String printFileName = null; try { printFileName = JasperFillManager.fillReportToFile(sourceFileName, parameters, beanArrayDataSource); if(printFileName != null){ //JasperPrintManager.printReport( printFileName, true); /** 1- export to PDF*/ JasperExportManager.exportReportToPdfFile(printFileName, "C://Users/zanderkong/Desktop/sample_report.pdf"); /**3- export to Excel sheet*/ RXlsExporter xlsExporter = new JRXlsExporter(); xlsExporter.setExporterInput(new SimpleExporterInput(printFileName)); xlsExporter.setExporterOutput(new SimpleOutputStreamExporterOutput("C://Users/zanderkong/Desktop/sample_report.xls")); SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration(); configuration.setOnePagePerSheet(true); configuration.setDetectCellType(true); configuration.setCollapseRowSpan(false); xlsExporter.setConfiguration(configuration); xlsExporter.exportReport(); } } catch (JRException e) { e.printStackTrace(); }

Tengo este código para exportar un JasperReprot a XLS:

JasperPrint jprint=JasperFillManager.fillReport(expRpg, null, new JRBeanCollectionDataSource(datalist)); JRXlsExporter exporter = new JRXlsExporter(); exporter.setParameter(JRXlsExporterParameter.JASPER_PRINT, jprint); exporter.setParameter(JRXlsExporterParameter.OUTPUT_STREAM, outStream); exporter.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE); exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); exporter.exportReport();

Actualizando a JasperReports 5.6 todos setParameter están marcados como "obsoletos" y no puedo encontrar documentación para adaptar este código.

¿Cómo exportar un informe a xls con JasperReports 5.6 ?


Gracias al código anterior, aquí está mi código: Aviso: Exportar Excel con ireport, ireport 6.0, java 7

Map<String, Object> parametro = new HashMap<String, Object>(); parametro.put("USUARIO", UConstante.NAME_MINISTERIO_USER); parametro.put("RUTA_LOGO", PuenteFile.getRutaFiles(FacesContext.getCurrentInstance(), PuenteFile.RUTA_IMG_LOGO)); parametro.put("PATH_SYSTEM", rutaFileSystemHD); parametro.put("WHERE_DATA", WHERE_REGISTRO); parametro.put("WHERE_PROYECTO_USUARIO", WHERE_PROYECTO_USUARIO); parametro.put("WHERE_ZONA", WHERE_ZONA); parametro.put("NAME_APP", RutaFile.NAME_APP); parametro.put("ID_USUARIO", getUsuario().getId()); parametro.put("ID_PROYECTO", beanProyecto.getId()); parametro.put("SUBREPORT_DIR", SUBREPORT_DIR); System.out.println(">>>>>> PARAMETROS :" + parametro.toString()); try { JasperPrint jasperPrint = JasperFillManager.fillReport(path, parametro, PgConnector.getConexion()); JRXlsExporter xlsExporter = new JRXlsExporter(); xlsExporter.setExporterInput(new SimpleExporterInput(jasperPrint)); xlsExporter.setExporterOutput(new SimpleOutputStreamExporterOutput(PuenteFile.getRutaFiles(FacesContext.getCurrentInstance(), PuenteFile.RUTA_REPORT_FILE) + nameExcel)); SimpleXlsReportConfiguration xlsReportConfiguration = new SimpleXlsReportConfiguration(); SimpleXlsExporterConfiguration xlsExporterConfiguration = new SimpleXlsExporterConfiguration(); xlsReportConfiguration.setOnePagePerSheet(true); xlsReportConfiguration.setRemoveEmptySpaceBetweenRows(false); xlsReportConfiguration.setDetectCellType(true); xlsReportConfiguration.setWhitePageBackground(false); xlsExporter.setConfiguration(xlsReportConfiguration); xlsExporter.exportReport(); } catch (Exception ex) { ex.printStackTrace(); }


JRExporter quedó en desuso en 5.6. Introdujeron una nueva interfaz Exportador y actualizaron todos los exportadores para que tengan ExporterInput, ReportExportConfiguration, ExporterConfiguration, ExporterOutput. Ver el enlace a continuación

http://jasperreports.sourceforge.net/api/net/sf/jasperreports/export/Exporter.html

Esto significa que en lugar de setParameter, necesita crear una configuración utilizando las clases mencionadas anteriormente o sus clases secundarias Ejemplo de exportación de PDF. La exportación de Excel debe seguir la misma metodología

JRPdfExporter exporter = new JRPdfExporter(); exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); exporter.setExporterOutput(outputStream); SimplePdfExporterConfiguration configuration = new SimplePdfExporterConfiguration(); exporter.setConfiguration(configuration); exporter.exportReport();

Contraparte de Excel

JRXlsExporter exporter = new JRXlsExporter(); exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(destFile)); SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration(); configuration.setOnePagePerSheet(true); configuration.setDetectCellType(true); configuration.setCollapseRowSpan(false); exporter.setConfiguration(configuration); exporter.exportReport();

SimpleXlsReportConfiguration tendrá una configuración relacionada con la exportación de excel. Establezca los valores según su requisito