On 11/19/2011 8:54 PM, Philip Nienhuis wrote:
Martin Hoeijmakers wrote:
<moved your reply down, to avoid top posting mix-up>
<adapted subject line>
On 11/19/2011 7:45 PM, Philip Nienhuis wrote:
Martin Hoeijmakers wrote:
<snip>
Because I use my program on two systems - one without Excel - I
used POI
(with Octave 3.2.4). If I use POI now, I get the error message
error: [java] java.lang.NoSuchMethodException: getNumWorkSheets
error: called from:
error:
C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\packages\io-1.0.15\oct2xls.m
at line 491, column 14
error:
C:\Octave\Octave3.4.3_gcc4.5.2\share\octave\packages\io-1.0.15\oct2xls.m
at line 163, column 17
Do you have a solution for this?
Looks like you have something mixed up in the Apache POI Java class
libs.
Please run this command:
chk_spreadsheet_support ('', 3)
('' = 2 consecutive quotes, w/o space in between, and NO ";" at the
end)
and copy the output in your reply.
Do you know the POI version? (3.5, 3.6, 3.7, 3.8?)
I need this info to be able to help you solve this issue.
>
> Hi Philip,
>
> I get:
>
> octave:1> chk_spreadsheet_support([],3)
>
> Checking Excel/ActiveX/COM... OK.
>
> Checking Java support...
> 1. Checking Java JRE presence.... OK, found one.
> 2. Checking Octave Java support... Java package seems to work OK.
> Java (version 1.6.0_29) seems OK.
> Maximum JVM memory: 495 MiB; sufficient.
> Java support OK
>
> Checking javaclasspath for .jar class libraries needed for spreadsheet
> I/O...:
>
> Basic POI (.xls) <poi-3> <poi-ooxml>:
> - C:\Octave\Octave3.4.3_gcc4.5.2\bin\poi-3.7-20101029.jar OK
> - C:\Octave\Octave3.4.3_gcc4.5.2\bin\poi-ooxml-3.7-20101029.jar OK
> => Apache (POI) OK
>
> POI OOXML (.xlsx) <xbean> <poi-ooxml-schemas> <dom4j>:
> - C:\Octave\Octave3.4.3_gcc4.5.2\bin\xbean.jar OK
> -
C:\Octave\Octave3.4.3_gcc4.5.2\bin\poi-ooxml-schemas-3.7-20101029.jar OK
> - C:\Octave\Octave3.4.3_gcc4.5.2\bin\dom4j-1.6.1.jar OK
> => POI OOXML OK
:
<rest snipped>
:
> So, I think my POI version is 3.7.
Yes; btw you get exactly the same output as on my box.
So I made a simple test case and I hit the same error.
I remember vaguely I had to change the call to get the number of
worksheets as it changed in some POI version. Hmmm....
The proposed fix:
In oct2xls, change L.490 from:
nr_of_sheets = xls.workbook.getNumWorkSheets ();
into the following sequence:
try
nr_of_sheets = xls.workbook.getNumWorkSheets ();
catch
nr_of_sheets = xls.workbook.getNumberOfSheets ();
end_try_catch
Please report back if this works OK for you.
Philip
Hi Philip,
This seems to be OK
Thank you,
Martin
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev