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
Travail à distance – Guide IT et Métiers
Le travail à distance met à l'épreuve la maturité numérique des entreprises en termes de Cybersécurité, d'espace de travail, de bien-être des collaborateurs, de communication et gestion de projet à distance. Découvrez, dans ce nouveau Guide Kyocera, quels leviers activer prioritairement pour mettre en place des solutions de travail à domicile efficaces, pérennes et sécurisées.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Passeport numérique des produits : se préparer à la réglementation européenne à venir
- L’IA impacte les grandes fonctions de l’entreprise
- Azul permet aux entreprises de simplifier leurs environnements Java
- AI Speech double toutes vos vidéos !
- Finance : l’IA générative plébiscitée pour les décisions stratégiques