Hello together,

i have a problem running a java stored procedure. I know why the problem occures, but i don't know how to solve it:

My iSeries' CCSID-sysval (QCCSID) is 65535. I am not allowed to change this value. My job, that runs the procedure inherits the QCCSID via my user profile. When i call my procedure with 'call mylib.myprog' in sql-mode, the system says it can't find the stored procedure. The name of the procedure in the error message is not 'mylib.myprog' but a stream of strange characters. When i change my job's ccsid to 273 with cl-command chgjob CCSID(273), the call works fine.
Now i would like to know if i can run the stored procedure without change the QCCSID or chgjob. Maybe y can change the encoding of the class-file of the stored procdure before calling
create procedure mylib/myprog()
language java
parameter style java fenced
external name 'WriteToDataQueue.write'

There is another thing, that puzzles me:
The following java code executed on the iSeries with strqsh returns '273' and not '65535'.

AS400 as400 = new AS400(IP, USER, PASSWD);
int ccsid = as400.getCcsid();

(The AS400-Class is from the jt400.jar)

Are there different CCSID-configurations on our iSeries (V5R4)?


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2021 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.