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
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Afficher les icônes cachées dans la barre de notification
- IBM i célèbre ses 25 ans
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
Les plus consultés sur iTPro.fr
- Souveraineté des données : bâtir un stockage hybride adapté à l’ère de l’IA
- Secteur public : l’IA accélère la modernisation des infrastructures
- De l’inventaire à l’action : l’Asset Management au service d’un Numérique plus responsable
- IA et bureaucratie : la complexité qui grève les projets
Articles les + lus
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
À la une de la chaîne Tech
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
