Hallo,

deren gibt es mehrere:
- Classpath ist case sensitive
- IFS root ist case sensitive
- Java Klassen könnten auch noch in einem Package sein, dann muss die Klasse entsprechend plaziert werden
- die JVM könnte später von einem vorherigen Aufruf bereits gestartet sein, dann zieht der Classpath nicht mehr

im übrigen ist davon abzuraten aus RPG synchron Java aufzurufen, für jeden Job, der sowas verwendet, wird eine eigene JVM gestartet und das dauert nicht nur lange, sondern fährt dir jede Kiste platt. Genau deshalb empfiehlt IBM das und macht Reklame für on demand.

mfg

Dieter Bender

Zitat Zitat von codierknecht
Hallo zusammen...

ich versuche nun schon seid einiger Zeit, eine einfache, selbstgeschriebene Java Klasse aus einem RPG-Programm aufzurufen.
Die Java Klasse mit der Methode ist fehlerfrei. Da liegt nicht das Problem.
Aber wenn ich die Methode aus RPG aufrufe erhalte ich den Fehler: "java.lang.NoSuchMethodError: berechne" .
Meine Klasse verfügt über diese Methode, die erwartet weder Parameter, noch gibt sie was zurück.
In RPG habe ich die Klasse/Methode so definiert:

D Aufruf PR EXTPROC(*JAVA : 'Rechner' : d 'berechne') D STATIC

C CALLP Aufruf

Die Klasse befindet sich in /HOME/USER als .java und .class
Ich habe auch schon den Klassenpfad mit:
ADDENVVAR ENVVAR(HOME) VALUE('/HOME/USER')
gesetzt, ohne Erfolg.

Weiß jemand, wo mein (Denk)Fehler liegt?