Pour ceux qui utilisent JRCsvExporter, le code suivant peut être utile. Donner une structure d'échantillon.
Classe de service Spring Framework (CSVExportService.java):
public JasperPrint getRawData(String empIds) {
JasperPrint jp = null;
String reportName = "Employee Report";
// use your own method to get empList
// eg: List<Employee> empList = empServiceClass.findByEmpIds(empIds);
JRDataSource jrDataSource = new JRBeanCollectionDataSource(empList);
// build your report
DynamicReportBuilder dynamicReportBuilder = new DynamicReportBuilder();
dynamicReportBuilder.setAllowDetailSplit(false);
// configure your report with few more options here
// create columns
ColumnBuilder columnBuilderName = ColumnBuilder.getNew();
columnBuilderName.setTitle("Emp Name");
columnBuilderName.setWidth(300);
columnBuilderName.setFixedWidth(true);
columnBuilderName.setColumnProperty("name", String.class.getName());
dynamicReportBuilder.addColumn(columnBuilderName.build());
DynamicReport dynamicReport = dynamicReportBuilder.build();
jp = DynamicJasperHelper.generateJasperPrint(dynamicReport, new ClassicLayoutManager(), jrDataSource, new HashMap<String, Object>());
return jp;
}
Spring Framework Classe contrôleur:
public void exportToCSV(@PathVariable String empIds){
JasperPrint jp = null;
jp = csvExportService.getRawData(empIds);
response.setContentType("text/csv");
response.setHeader("Content-Disposition", "attachment; filename="EMPRawData.csv");
OutputStream out = response.getOutputStream();
JRCsvExporter exporterCSV = new JRCsvExporter();
exporterCSV.setParameter(JRExporterParameter.JASPER_PRINT, jp);
exporterCSV.setParameter(JRExporterParameter.OUTPUT_STREAM, out);
exporterCSV.exportReport();
out.flush();
}
@Gordon .. Je suis arrivé à l'exception comme « Uncaught exception jeté dans l'un des services méthodes de la servlet: InvestorConfirmServlet Exception levée: java.lang.NoClassDefFoundError: org.apache.poi.hssf.usermodel.HSSFCellStyle ".. J'ai mis le fichier .jar également dans le classpath. mais même ça jette une erreur ... – Manu
@Manu J'ai mis à jour ma réponse. J'espère que ça devrait aider. – Gordon
pouvez-vous me donner le lien pour télécharger les fichiers jar ... – Manu