par Liam McMahon - Mis en ligne le 19/05/2003
Comment faites-vous pour qu'un
ancien programme RPG/400 puisse extraire
des informations en temps réel d'une base de données Microsoft SQL
Server fonctionnant sur un serveur NT
à distance ? C'est exactement le problème
que m'a posé l'un de mes clients
désireux de remplacer sa vieille suite financière
AS/400 par un système NT
tournant sur un serveur à distance.
Malgré la disparition de l'ancienne
suite financière, bon nombre des applications
AS/400 du client subsistaient et
certaines d'entre elles devaient même
communiquer avec le nouveau système
financier en temps réel. De plus,
je devais apporter un minimum de modifications
aux applications AS/400.
Heureusement, Java et l'API Java RMI
(Remote Method Invocation) sont venus
à mon secours.
Au travers des plates-formes avec Java RMI
Java RMI est une méthode simple
pour mettre en oeuvre un modèle d’informatique
distribuée multi-plateforme
en utilisant Java. En essence,
c’est le moyen par lequel une méthode d’une classe Java fonctionnant dans
une JVM (Java Virtual Machine) peut
invoquer une méthode d’une classe
Java qui fonctionne sur une autre JVM,
même si cette dernière tourne sur un
système à distance. Quand la méthode
à distance est invoquée, elle est exécutée
sur le JVM à distance et comme
toutes les méthodes Java, elle peut
renvoyer une réponse sous la forme
d’un objet Java ou d’une variable primitive
vers la méthode appelante.
En ce qui me concerne, c’est idéal.
Une classe Java fonctionnant sur un
AS/400 peut envoyer une demande
d’information à une classe Java fonctionnant
sur un serveur NT à distance ;
la classe de ce dernier peut traiter la requête
(par exemple, interroger une
base de données SQL Server) et renvoyer
l’information extraite à la méthode
appelante sur l’AS/400.
RMI brille par sa simplicité.
Appeler la méthode à distance ressemble
beaucoup à appeler une méthode
sur la machine locale, et peu importe
comment les différentes
plates-formes communiquent parce
que Java s’en occupe entièrement.
Quand une classe client dans une
JVM adresse une requête d’une classe
serveur dans une JVM à distance, plusieurs
couches entrent en scène (figure
1). La couche souche/squelette se
comporte comme le substitut local
pour les objets distants. Quand vous
invoquez une méthode à distance,
vous appelez en fait une méthode dans
la couche souche/squelette. La commande
JDK RMIC (Java Developer’s Kit
RMI Compiler) crée automatiquement
les classes dans la couche souche/squelette, et donc vous n’avez
pas à vous en préoccuper. Si votre JDK
est en version 1.2 ou ultérieure, vous
n’avez besoin d’utiliser que des
souches dans la couche souche/squelette.
Avec les versions antérieures, il
fallait à la fois les souches et les squelettes.
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Gestion et sécurité des e-mails : tout est-il vraiment sous contrôle ?
- IA générative dans le secteur public : le cloud souverain s’impose comme priorité
- Les entreprises sont engagées dans une course contre la montre face à l’accélération des cyberattaques alimentées par l’IA
- Sécurité : une approche dans la durée avant tout
Articles les + lus
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
Guide Ultime des Raccourcis Clavier Windows 11 pour les Professionnels IT
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
À la une de la chaîne Tech
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
- Guide Ultime des Raccourcis Clavier Windows 11 pour les Professionnels IT
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
