|
Rich,
I have an idea...not sure if this is right or not but here goes...
before you call this program try changing your current directory to the
directory where the XLWorkBook.java file is...
CHGCURDIR DIR('/QIBM/UserData/Java400/ext/')...or where ever you put the
java file...
see if that works...
Shane Cessna
iSeries Programmer
iSeries WAS Administrator
North American Lighting, Inc.
(618) 662-4483 x2776
shane_cessna@xxxxxxx
"Rich Dotson" <rich_dotson@xxxxxxxxxxx>
Sent by: java400-l-bounces@xxxxxxxxxxxx
10/11/2005 08:16 AM
Please respond to
Java Programming on and around the iSeries / AS400
<java400-l@xxxxxxxxxxxx>
To
java400-l@xxxxxxxxxxxx
cc
Subject
Re: HSSF error when reading an existing Excel spreadsheet
Shane,
I changed the CLASSPATH and was able to compile the XLWorkBook.java
program.
I added the openXL procedure to my RPG program just as you described in
the previous email. Now when I run the RPG program I get the following
error:
Message ID . . . . . . : RNX0301 Severity . . . . . . . : 50
Message type . . . . . : Diagnostic
Date sent . . . . . . : 10/11/05 Time sent . . . . . . : 09:00:30
Message . . . . : Java exception received when calling Java method.
Cause . . . . . : RPG procedure XLSOPEN in program U28871/XLSOPEN
received
Java exception "java.lang.UnsatisfiedLinkError:" when calling method
"load"
with signature "" in class "XLWorkBook".
The error occurred on line 50 below:
49 fileName = new_String('/excel/BBNExpress.xls');
50 book = openXL(fileName);
Thanks for all the help....
Here's the new version of the RPG program:
H DFTACTGRP(*NO)
H OPTION(*SRCSTMT: *NODEBUGIO: *NOSHOWCPY)
H THREAD(*SERIALIZE)
H BNDDIR('OSBBNDDIR' : 'QC2LE')
/copy qOSBCPYSRC,hssf_h
D book s like(HSSFWorkbook)
D sheet s like(HSSFSheet)
D row s like(HSSFRow)
D cell s like(HSSFCell)
D TempStr s like(jString)
D StrVal s 52A varying
D NumVal s 8F
D type s 10I 0
D String_getBytes...
D pr 1024A varying
D extproc(*JAVA:
D 'java.lang.String':
D 'getBytes')
d openXL pr o extproc(*JAVA
d :'XLWorkBook'
d :'loadWB')
d CLASS(*JAVA:
d 'org.apache.poi.hssf.usermodel-
d .HSSFWorkbook')
d static
d fileName like(jString)
d fileName s like(jString)
* Put environment variable
D PutEnv pr 10i 0 ExtProc('putenv')
D EnvVar * value options(*string)
D rc s 10i 0
/free
// set CLASSPATH environment
rc = putenv('CLASSPATH=/excel/POI-2.0.jar');
hssf_begin_object_group(100);
// Load the BBN Express Spreadsheet into memory
// --->book = hssf_open('/excel/BBNExpress.xls');
fileName = new_String('/excel/BBNExpress.xls');
book = openXL(fileName);
// Get the first cell
sheet = hssf_getSheet(book: 'Sept 20');
row = HSSFSheet_getRow(sheet: 2);
cell = HSSFRow_GetCell(row: 2);
type = HSSFCell_getCellType(cell);
StrVal = 'Cell B2 = ';
select;
when type = CELL_TYPE_STRING;
StrVal +=
String_getBytes(HSSFCell_getStringCellValue(cell));
when type = CELL_TYPE_FORMULA;
StrVal += String_getBytes(HSSFCell_getCellFormula(cell));
when type = CELL_TYPE_NUMERIC;
NumVal = HSSFCell_getNumericCellValue(cell);
StrVal += %char(%dech(NumVal:15:2));
endsl;
dsply StrVal;
hssf_save(book: '/excel/BBNExpress.xls');
hssf_end_object_group();
*inlr = *on;
/end-free
_________________________________________________________________
Don’t just search. Find. Check out the new MSN Search!
http://search.msn.click-url.com/go/onm00200636ave/direct/01/
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.