Bug 36170 - RecordFormatException: Unable to construct record instance: null using HSSF
Summary: RecordFormatException: Unable to construct record instance: null using HSSF
Status: RESOLVED FIXED
Alias: None
Product: POI
Classification: Unclassified
Component: HPSF (show other bugs)
Version: 2.5-FINAL
Hardware: PC Windows XP
: P2 minor (vote)
Target Milestone: ---
Assignee: POI Developers List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-08-12 20:08 UTC by Grant Benson
Modified: 2005-08-23 20:16 UTC (History)
0 users



Attachments
Sample of the workbook I'm attempting to read. (112.00 KB, application/vnd.ms-excel)
2005-08-12 20:10 UTC, Grant Benson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Grant Benson 2005-08-12 20:08:32 UTC
I discovered that I receive this error if a worksheet in the workbook has 
AutoFilter enabled.

It doesn't matter if the workbook has 1 or many sheets with this feature 
enabled.

Here are the pertenent lines of code:

private POIFSFileSystem wbFs;
private HSSFWorkbook wbWb;

wbFs = new POIFSFileSystem(new FileInputStream(srcFilename));
wbWb = new HSSFWorkbook(wbFs);

Trace stack:
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown 
Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown 
Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at org.apache.poi.hssf.record.RecordFactory.createRecord
(RecordFactory.java:224)
	at org.apache.poi.hssf.record.RecordFactory.createRecords
(RecordFactory.java:160)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>
(HSSFWorkbook.java:163)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>
(HSSFWorkbook.java:130)
	at newbenson.Extract2.updateWorkbooks(Extract2.java:885)
	at newbenson.Extract2$ActualTask.<init>(Extract2.java:1101)
	at newbenson.Extract2$1.construct(Extract2.java:1011)
	at newbenson.SwingWorker$2.run(SwingWorker.java:114)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ArrayIndexOutOfBoundsException
	at java.lang.System.arraycopy(Native Method)
	at org.apache.poi.hssf.record.UnknownRecord.<init>
(UnknownRecord.java:62)
	at org.apache.poi.hssf.record.SubRecord.createSubRecord
(SubRecord.java:57)
	at org.apache.poi.hssf.record.ObjRecord.fillFields(ObjRecord.java:99)
	at org.apache.poi.hssf.record.Record.fillFields(Record.java:90)
	at org.apache.poi.hssf.record.Record.<init>(Record.java:55)
	at org.apache.poi.hssf.record.ObjRecord.<init>(ObjRecord.java:61)
	... 13 more
org.apache.poi.hssf.record.RecordFormatException: Unable to construct record 
instance, the following exception occured: null
	at org.apache.poi.hssf.record.RecordFactory.createRecord
(RecordFactory.java:237)
	at org.apache.poi.hssf.record.RecordFactory.createRecords
(RecordFactory.java:160)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>
(HSSFWorkbook.java:163)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>
(HSSFWorkbook.java:130)
	at newbenson.Extract2.updateWorkbooks(Extract2.java:885)
	at newbenson.Extract2$ActualTask.<init>(Extract2.java:1101)
	at newbenson.Extract2$1.construct(Extract2.java:1011)
	at newbenson.SwingWorker$2.run(SwingWorker.java:114)
	at java.lang.Thread.run(Unknown Source)
Comment 1 Grant Benson 2005-08-12 20:10:10 UTC
Created attachment 16024 [details]
Sample of the workbook I'm attempting to read.
Comment 2 Jason Height 2005-08-24 04:16:20 UTC
The attached file works with HEAD of CVS.

Jason