Présentation
En anglaisAuteur(s)
-
Patrick BELLOT : Docteur d’État en informatique - Professeur à l’École nationale supérieure des Télécommunications
-
Christophe MATIACHOFF : Docteur de l’université Pierre-et-Marie-Curie IBM France - Services e-business
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Ll est tout à fait possible d’écrire d’intéressants programmes en langage Java en ignorant totalement les outils présentés ici. On pourrait même affirmer que pour écrire une application s’exécutant en local sur une machine, il suffit de connaître le langage bien sûr et quelques paquetages assez simples, des « packages » dans la terminologie Java.
Cependant, dès lors que l’application doit accéder à des bases de données ou bien être répartie, il est nécessaire de connaître de nouveaux outils proposés dans l’environnement de Java. L’objet de cet article est de présenter ces différents outils et la manière dont ils doivent être mis en œuvre. Il n’est bien entendu pas possible d’être exhaustif.
Les objets distribués doivent leur succès aux réseaux qui sont devenus plus simples et plus rapides pour l’utilisateur. Il est maintenant possible de faire « vivre » des objets situés sur des machines distantes et de les faire communiquer pour coopérer au succès d’une tâche dont on sait répartir les composantes.
Java propose deux mécanismes de distribution d’objets :
-
le mécanisme Java/RMI (« remote method invocation ») est un mécanisme spécifique de l’environnement Java. Il ne permet la communication qu’entre objets du langage Java ;
-
le mécanisme Java/IDL (« interface definition language ») est la mise en œuvre en Java d’un mécanisme plus général et normalisé, appelé CORBA (« common object broker architecture ») et permet la communication entre les objets de Java et ceux définis dans d’autres langages.
Nous explicitons les particularités de ces deux mécanismes et nous donnons les bases nécessaires à leur utilisation.
Des mêmes auteurs, on trouvera dans le présent traité l’article consacré au langage Java (Langage Java).
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Java/RMI : communications entre objets Java distribués
Java/RMI (remote method invocation) est spécifique au langage Java. C’est un ensemble de classes et d’outils de mise en œuvre permettant à des objets distribués sur différents sites ou sur une même plate-forme de communiquer entre eux. On rappelle [1, 2] que les objets Java sont exécutés par la machine virtuelle Java appelée la JVM (Java virtual machine ) [3].
1.1 Objets Java distribués
Les objets peuvent être distribués de différentes manières (figure 1) :
-
ils peuvent s’exécuter sur des machines virtuelles Java (JVM) différentes sur une même plate-forme ;
-
ils peuvent s’exécuter sur des machines virtuelles sur des plates-formes différentes mais reliées par un réseau local (LAN) ou Internet (WAN).
1.2 Interfaces
Le moyen de communication entre objets est l’envoi de message. Il est composé du nom d’une méthode que l’objet sait exécuter et des paramètres adéquats. On peut dire que l’envoi de message est un appel de méthode de l’objet.
imaginons un éditeur de figures géométriques. Celui-ci gère chacune des figures géométriques en cours d’édition comme un objet particulier. Il y a donc une classe Figure dérivée en plusieurs classes telles que Cercle, Carré ou encore Rectangle. Ces figures doivent être capables d’exécuter une méthode dessiner prenant en paramètres un objet de type Graphics...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Java/RMI : communications entre objets Java distribués
ANNEXES
###
HAUT DE PAGE
Dans les Techniques de l’Ingénieur
BELLOT (P.) - MATIACHOFF (C.) - Langage Java. - [H 3 088], Technologies logicielles – Architectures de systèmes (1998).
BELLOT (P.) - ROBINET (B.) - Conception de logiciels et portabilité. - [H 3 288], Technologies logicielles – Architectures de systèmes (1998).
HAUT DE PAGE
Référence
LINDHOLM (T.) - YELLIN (F.) - The Java Virtual Machine. - Addison-Wesley (1996).
Ouvrages généraux
BEN-NATAN (R.) - Corba on the Web. - MacGraw-Hill (1998).
HAROLD (E.R.) - Java Network Programming. - O’Reilly (1997).
MOWBRAY (T.J.) - ZAHAVI (R.) - The Essential CORBA, Systems Integration using Distributed Objects. - John Wiley & Sons, OMG (1995).
VOGEL (A.) - DUDDY (K.) - JAVA Programming With CORBA. - John Wiley & Sons, OMG (1997).
ORFALI (R.) - HARKEY (D.) - Client/Server Programming in Java and Corba. - John Wiley & Sons (1998).
HAUT DE PAGE
Object...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive