Nunja, Java als plattform-neutral zu bezeichnen halte ich für ein Gerücht.
Es gibt nun doch zu viele Implementierungsabhängigkeiten.

Auf der AS/400 gibts z.Zt. nur Java 1.4.2 (ab V6 vielleicht mehr?).
Die neueren Anwendungen verlangen aber schon meist Java5 (1.5.x) oder Java6 (1.6.x).
Mit dieser Option erstellte Klassen kann die AS/400 gar nicht lesen.

Ansonsten kann die AS/400 ausschließlich als Java-Server dienen und selber keine Terminals bedienen.
Man ist also komplett auf eine Web-Oberfläche oder eben JavaApplets beschränkt.

Bei C++ gibts aber die selben Abhängigkeiten, da es auch hier verschiedene Implementationen gibt.
Ausschließlich die Standardfunktionen sind am kompatibelsten.
Beim File-IO oder SQL-Precompiler unterscheiden sich die Welten schon.

Was den seltenen Fall von Java auf der AS/400 angeht, so meine ich damit kommerzielle Applikationen.
Einzelne Dienstfunktionen (XML-Verarbeitung, Mail, PDF-Erstellung, u.s.w.) werden da schon häufiger verwendet.
Aber alles im Sinne der Batchverarbeitung von Funktionen, die ILERPG eben (noch) nicht hergibt.