I'm running into an issue with the Linux Excel adapter in which some .xls files containing blank lines at the end throw a null pointer exception. I'm processing a directory containing about 40 .xls files and three of them contain empty lines at the end. Of those three, one of them throws the null pointer exception pasted below. I've tried running this with both the stock apache poi jar files as well as using the latest stable release from apache with the same results.
I guess I'm hoping someone can help me with one of three things. Is there a direct fix for this issue? Is there a workaround (some sort of pre-processor/scrubber)? Or, is there a way to be notified which file out of the 40 are failing so that it can be manually remediated (I found the bad file by process of elimination this time)?
Log files, with all trace messages enbaled, are attached, but here is a paste of the error:
RUN-058107: |Data flow DF_Project_Budget_Init|Reader Project_Budget
Error reading from <Project_Budget>: <java.lang.NullPointerException: while trying to invoke the method
org.apache.poi.ss.usermodel.Row.getFirstCellNum() of a null object loaded from local variable 'lastRow'
at com.acta.adapter.msexceladapter.MSExcelAdapterReadTable.getTotalRows(MSExcelAdapterReadTable.java:1324)
at com.acta.adapter.msexceladapter.MSExcelAdapterReadTable.ReadAllRows(MSExcelAdapterReadTable.java:1096)
at com.acta.adapter.msexceladapter.MSExcelAdapterReadTable.readNext(MSExcelAdapterReadTable.java:1232)
at com.acta.adapter.sdk.StreamListener.handleBrokerMessage(StreamListener.java:178)
at com.acta.brokerclient.BrokerClient.handleMessage(BrokerClient.java:406)
at com.acta.brokerclient.BrokerClient.access$100(BrokerClient.java:53)
at com.acta.brokerclient.BrokerClient$MessageHandler.run(BrokerClient.java:1559)
at com.acta.brokerclient.ThreadPool$PoolThread.run(ThreadPool.java:100)
And here are screenshots of the source config: