Forum Discussion

dinkel's avatar
14 years ago

Excel DataSink fails under Linux

Hello all,

I'm currently evaluating SoapUI Pro (3.6.1 and 3.6.2-snapshot20110209 both installed together with the included JRE) for data driven testing on Windows and Linux and I might have found a killer bug for us.

The problem is, that the DataSink feature for writing to Excel files is broken on Linux, while the same project works perfectly well on Windows. When the DataSink step is called, soapUI throws an error and does not update the .xls file. Here's the stack-trace from the error.log tab:


Wed Feb 09 16:47:05 CET 2011:ERROR:java.lang.ArrayIndexOutOfBoundsException
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at jxl.biff.StringHelper.getBytes(StringHelper.java:127)
at jxl.write.biff.WriteAccessRecord.<init>(WriteAccessRecord.java:59)
at jxl.write.biff.WritableWorkbookImpl.write(WritableWorkbookImpl.java:726)
at com.eviware.soapui.impl.wsdl.teststeps.datasink.ExcelDataSink.finish(SourceFile:226)
at com.eviware.soapui.impl.wsdl.teststeps.WsdlDataSinkTestStep.finish(SourceFile:231)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.internalFinally(WsdlTestCaseRunner.java:171)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.internalFinally(WsdlTestCaseRunner.java:39)
at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:163)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


I have attached a minimal project file together with a basic xsl file that is used as input and output. It would be very nice if someone was able to reproduce the same behaviour on a Linux box and someone to confirm that it runs on Windows (what about OSX, btw.?). Before running the test, one needs to update the file path to the test.xls file in the steps DataSource and DataSink.

Or am I missing something here?

Thanks a lot,

Dinkel
  • I have the same issue. The datasink works fine under Windows 7 but errors under Linux.
    Hopefully I'll get an email notification when this is fixed...
  • Hi,
    is there any further update on this? I can write to new files fine, but appending always blows up. Using v4.5.1, windows 7 x64, jdk 1.6_031 x64

    thanks
    David
  • Hi All,

    I am not sure if you have figured it out, but it is not the SOAP UI issue with Excel DataSink, it is the character encoding issue in linux for excel file reading and writing, after 2 days of hard research, coming across this post a 100 times, and then I got this : http://jira.pentaho.com/browse/PDI-5031

    So, I changed the encoding to ISO-8859-1 by passing an argument to the run process of SOAP UI , and it worked that is system property of linux needs to be :

    -Dfile.encoding=ISO-8859-1 or windows-1252, but not UTF-8

    Thanks,
    Sindhu
  • Hi Sindhu,

    Thank you for your inputs on this problem. I am here with same situation.

    but when i follow the same, the problem was not resolved. Could you please provide more information on how you are setting "file.encoding" ?

    1. Are you setting when the JVM startup in linux ?

    2. Are you passing a property to soapui project?

    thanks,
    Sreedhar.