La série d’articles « Intégrer RPG et Java avec JNI » (voir l’encadré « Pour en savoir plus ») couvre les étapes nécessaires pour établir la communication entre RPG et Java dans votre environnement. Voici une récapitulation rapide de la série, en relation avec notre exercice sur les expressions régulières.
Récapitulation – Appeler Java à partir du RPG
L’appel de méthodes Java à partir de RPG consiste d’abord à définir les prototypes RPG qui décrivent les paramètres d’entrée et les types de renvoi des méthodes Java. Plutôt que de coder ces prototypes manuellement, vous pouvez les générer via le CODE/400 IDE ou le WebSphere Development Studio Client. En général, ils présentent ce format:
D-spec contenant le nom RPG…
D-spec contenant PR et le type de renvoi de la méthode D-spec contenant Extproc(*Java: ‘classfile’:
‘method name’)
D-spec décrivant l’objet type de renvoi (si ce n’est pas un type de donnée primitif)
D-specs décrivant les paramètres d’entrée Par exemple, une méthode Java prend une variable Java String comme paramètre d’entrée et renvoie une valeur Boolean si une correspondance est trouvée :
boolean match(java.lang.String)
Le prototype RPG pour cette méthode serait codé comme dans la figure 3.
Un programme RPG qui utilise les méthodes Java effectuera la compilation en vérifiant l’utilisation éventuelle des méthodes par rapport à la signature de méthodes décrites par les prototypes. Ce n’est qu’à l’exécution que la présence des classes Java ellesmêmes sera vérifiée. A cet effet, la variable d’environnement CLASSPATH doit être réglée de manière à pointer sur l’emplacement des classes Java, en utilisant la commande AddEnvVar (Add Environment Variable), comme dans la figure 4. Il est important d’utiliser l’option REPLACE(*YES) car la commande échouera si CLASSPATH existe déjà.
Une fois les méthodes Java prototypées et la variable d’environnement CLASSPATH définie, les méthodes peuvent être appelées en utilisant les codes opération RPG existants. Utilisez CALLP quand aucune valeur de renvoi n’est attendue. Vous pouvez utiliser les méthodes dans le cadre d’une expression ou utiliser EVAL quand une valeur de renvoi est attendue. Après l’utilisation d’un objet Java, il ne reste plus qu’à nettoyer et à rendre l’objet disponible pour le garbage collection. Cela se fait en appelant la procédure RPG ReleaseJavaObject dans le programme VMTRNS. J’ai choisi de mettre VMTRNS dans un répertoire liant que je référence dans mes specs d’en-tête. (Le source complet de VMTRNS se trouve dans l’article « Intégrer RPG et Java avec JNI : Clients RPG », septembre 2003 ou www.itpro.fr . Voir aussi le chapitre 11, « RPG and the eBusiness World », dans le Redbook IBM iSeries WebSphere Development Studio : ILE RPG Programmer’s Guide (SC09-2507).
Téléchargez cette ressource
Sécuriser Microsoft 365 avec une approche Zero-Trust
Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- IBM i célèbre ses 25 ans
- Activer la mise en veille prolongée dans Windows 10
Les plus consultés sur iTPro.fr
- Analyse Patch Tuesday Juin 2026
- La bataille de la 6G se gagne dans la donnée en temps réel
- BlueSecure repense la sensibilisation à la cybersécurité avec des formats immersifs et engageants
- Les agents d’IA fragilisent la sécurité : pour les sécuriser, inutile de repartir de zéro
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
