Я получаю исключение нулевого указателя при создании файла .xls с использованием apache poi в java.
Тот же код работает нормально с "английским языком", но дает мне нулевой указатель при попытке сгенерировать на "французском""Language.
Некоторые столбцы имеют нулевое значение, но я обрабатываю эти нулевые данные и пустую ячейку при создании ячейки
, получая нулевой указатель при попытке записать детали
"classExcel.write (out)";
Ниже приведен метод, который я использую для генерации xls после всех данных, которые я сохранил в DTO.
public void ExcelGenerate(
ClassExcelDTO classExcel,
HttpServletResponse response,
HttpServletRequest request) throws Exception {
request.setCharacterEncoding("iso-8859-1");
if( classExcel != null ){
response.reset();
response.setContentType("application/csv");
response.setHeader("Content-disposition","attachment;filename=\"" + classExcel.getName + ".xls\"");
try {
if(null!=response && null!=response.getOutputStream()){
OutputStream out = response.getOutputStream();
if(null!=out)
try {
classExcel.write(out);
} catch (Exception e) {
e.printStackTrace();
}
out.close();
}
} catch (SocketException sEx) {
} catch (IOException io) {
} catch (Exception e) {
}
} else {
// Some code
}
}
Ниже сгенерированное исключение: 14: 43: 09,037 ОШИБКА [stderr] (http-localhost / 127.0.0.1: 8080-4) java.lang.NullPointerException
14: 43: 09,037 ОШИБКА [stderr] (http-localhost / 127.0.0.1: 8080-4) at org.apache.poi.util.StringUtil.putCompressedUnicode (StringUtil.java:193)
14: 43: 09,037 ОШИБКА [stderr] (http-localhost/127.0.0.1:8080-4) at org.apache.poi.hssf.record.BoundSheetRecord.serialize (BoundSheetRecord.java:281)
14: 43: 09,037 ОШИБКА [stderr] (http-localhost / 127.0.0.1: 8080-4) в org.apache.poi.hssf.model.Workbook.serialize(Workbook.java:732)
14: 43: 09,037 ОШИБКА [stderr] (http-localhost / 127.0.0.1: 8080-4) в org.apache.poi.hssf.usermodel.HSSFWorkbook.getBytes (HSSFWorkbook.java:786)
14: 43: 09,037 ОШИБКА [stderr] (http-localhost / 127.0.0.1: 8080-4) в org.apache.poi.hssf.usermodel.HSSFWorkbook.write (HSSFWorkbook.java: 732)
Пожалуйста, помогите мне, если у кого-нибудь есть идеи.