Good News Everybody!
The new search engine is LIVE!
Please report any problems to david (at) midrange.com.
|
CZE Midrange wrote:
> I created a JAR with CRTJVAPGM with Classpath *ENVVAL
>
> I set the jobs environment value of classpath to /poi.jar
> (the jar resides in the root). Folder POI is in QDLS.
> Doc inside folder is MARC.JAR.
>
> The rpg code looks like:
>
> * // OBJECT DEFINITIONS
> * WORKBOOK
>
> DWB S O CLASS(*JAVA
> D 'org.apache.poi.hssf.usermodel-
> D .HSSFWorkbook')
> * WORKBOOK CONSTRUCTOR
> DCREATEWB PR O EXTPROC(*JAVA
> D :'org.apache.poi.hssf.usermodel-
> D .HSSFWorkbook'
> D :*CONSTRUCTOR)
> D CLASS(*JAVA
> D :'org.apache.poi.hssf.usermodel-
> D .HSSFWorkbook')
> /FREE
> COUNT = 0;
> // Create a Workbook.
>
> WB = CREATEWB();
> on the call to the Constructor the java.lang.NoClassDefFound error appears.
> Any Ideas?
Did you really set the "classpath" environment variable? It should be
"CLASSPATH"; environment variables are case-sensitive.
But the real problem is that you're using the wrong continuation
character for your RPG literals. The - continuation means "start at the
first available position"; the + continuation means "start at the first
non-blank". So you're try to use class
'org.apache.poi.hssf.usermodel. HSSFWorkbook'
(The error message should have shown what class it couldn't find.)
By the way, I find it useful to define a named constant, like
WorkbookClass, with a long class name. Then you only have to code the
long form once. Also, you don't need to code the CLASS keyword for a
constructor; the class of the return value is the same as the class of
the constructor.
This mailing list archive is Copyright 1997-2026 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.