私は以下の問題があります。私は大きなXMLファイル(約100 MB)を解析しています。そして、データを処理した後、出力をXLSファイルに書き出しています。xlsファイルに書き込むときのエラー - Apache poiマルチスレッド
処理は、(ExecutorServiceを使用して)並列に実行され、すべてのスレッドは同じブックに書き込みます。
Caused by: java.lang.NullPointerException
at org.apache.poi.hssf.record.aggregates.RowRecordsAggregate.getEndRowNumberForBlock(RowRecordsAggregate.java:219)
at org.apache.poi.hssf.record.aggregates.RowRecordsAggregate.createIndexRecord(RowRecordsAggregate.java:469)
at org.apache.poi.hssf.model.InternalSheet.visitContainedRecords(InternalSheet.java:637)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.getBytes(HSSFWorkbook.java:1466)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.write(HSSFWorkbook.java:1380)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.write(HSSFWorkbook.java:1366)
at sample.Controller.buildSpreadsheet(Controller.java:295)
at sample.Controller.generateXLS(Controller.java:325)
... 58 more
事が時々は問題なく動作しますが、時には、このエラーでクラッシュしていることである:私が得た
例外は、次のようです。
アイデア?
おそらくExcelシートに空のセルがありますか? – AMB
コードに関するその他の情報は参考になります。 – Nilesh