Экспорт в Excel из Java - InvocationTargetException - PullRequest
0 голосов
/ 09 ноября 2010

Я застрял при попытке экспортировать некоторые данные в Excel.

Вот мой код

List<String> headers = new ArrayList<String>();
//////////////////////////////////////////////
/// Added some headers in between to the list               
///////////////////////////////////////////////

HSSFCell[] cell = new HSSFCell[headers.size()];

for (int i = 0; i < headersHSSF.length; i++) {  
  cell[i] = excelRow.createCell(i);    
  cell[i].setCellValue(new HSSFRichTextString(headers.get(i)));
}

Этот код вызывает исключение InvocationTargetException для строки

cell[i].setCellValue(new HSSFRichTextString(headers.get(i)));

Может кто-нибудь сказать мне причину, почему это происходит?

(PS: я вызываю код из Flex UI. Это не вызывается из кода Java)

1 Ответ

0 голосов
/ 09 ноября 2010

InvocationTargetException - это проверенное исключение, которое переносит исключение, выданное вызванным методом или конструктором.

Может быть, исключение выдается при создании класса HSSFRichTextString. В этом случае я бы сначала посмотрел (отладил) значение headers.get(i).

Существует большая вероятность, что у вас есть вложенный IndexOutOfBoundsException, потому что размер массива headersHSSF может быть больше, чем размер списка headers.

Изменить подпись цикла на:

for (int i = 0; i < headers.size(); i++) {

и проверьте, является ли ошибка тем же, нет или отличается.

...