Das Ändern der Libl findet wohl unter einer Bedingung statt.
Ggf. stimmt diese nicht oder die Parameterübergabe ist nicht korrekt.

Hier ist zu erwähnen, dass java in Unicode arbeitet und die AS/400 in EBCDIC.
In wie weit eine automatische Umsetzung in Java-Klassen erfolgt weiß ich nicht.

Empfehlenswert ist daher für solche Aktionen das Ganze mit SQL zu machen und ggf. CREATE PROCEDURE für diese Programme durchzuführen.
Die Datenumsetzung wird dann automatisch von SQL erledigt.
Außerdem gestalten sich die Aufrufe erheblich einfacher.
Wenn kein Rückgabewert benötigt wird kann jedes Programm einfach in SQL per CALL aufgerufen werden.