Java Remote Method Invocation (RMI)

Slides:



Advertisements
Présentations similaires
Master SIR (M2) Année Développement en environnement J2EE de Web services pour l'interopérabilité du projet CASTORE ce stage de fin d’étude a.
Advertisements

1 JavaScript V0 : Nauer. 2 JavaScript Quid ? Langage de programmation lié à HTML. Code JavaScript intégré aux pages HTML. Code interprété par le navigateur.
GESTION D’IMPRISSION SOUS WINDOWS & LINUX
Invocation de Méthode à des Objets distants RMI et Corba
Plan de l’enseignement
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Harmonisation AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Retour sur RMI.
1 Plan de lenseignement Cours Introduction au réseau via les objets distants (Application à RMI) Ce que cache RMI : programmation socket – mode connecté
ORB (1/2) ORB : Object Request Broker
Des sockets à RMI Programmation réseau versus programmation objet
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Architecture CORBA réseau Objet Corba Application Serveur
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Module SI4 Applications réparties
Des sockets à RMI. Pourquoi ? Maturation de la technologie orientée objet –ADA, Modula –Smalltalk, C++, Java Maturation des communications Client- Serveur.
Des sockets à RMI.
Introduction aux applications réparties
TP 7.1 synchronized et join Écrire un programme Java qui crée 1000 threads et maintient un compteur nb du nombre de threads créés jusque-là. Le thread.
Chapitre I : Systèmes d’exploitation
Exposé de Système - Informatique et Réseau
Dernière scéance: Des question?????? + Deux exercices.
Programmation Objet en JAVA Cours 9 : Réseau R. M
MIKHAYLOVA Vera Exposé Java principe de fonctionnement Lundi 17 mai 2004 DEUG 1ère année Science du langage Paris III.

CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV EJB Session Module Java Expert.
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV Borland JBuilder 7 Module WSAD.
BERNARDIN Benoît Université de Franche-Comté – Année 2008/2009
JAVA RMI Remote Method Invocation
Common Gateway Interface
Android est une plateforme mobile open source et entièrement paramétrable. Elle a été créée afin de mettre à disposition des développeurs toutes les fonctionnalités.
Labview Programmation réseau Communication par sockets
BERNARDIN Benoît Lycée Louis Pergaud
Laboratoire d'Informatique de l’Université de Franche-Comté
CAT 2000 LES MIDDLEWARES Présenté par : Tagmouti Siham Smires Ali
.Net Remoting.
Création d'un projet Web avec Netbeans
Cours 12 Contenu du cours : RMI : a quoi ca sert Comment ca marche
PROJET DE GENIE LOGICIEL 2005
Java et les appels de méthodes distantes
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
Réunion de collaboration du 9-10 Juillet 2008 J.L. Béney 1 Logiciel At  Client-Serveur Tcp/ip de la station autonome  Influence de l'architecture matérielle.
Masters IIGLI et ILGII – Intranet internet extranet – – Claude Montacié 1 Cours n° 7 Appel de procédures à distance.
Présentation de CORBA et de IIOP
Exploration de la programmation android Formation Assurer par: Club FreeWays Réalisé par: BOUHJJA Lamia.
VPN sous Linux Essaka Cynthia Serbin Laurent. Sommaire  Introduction  Vpnd  LRP  Freeswan.
Systèmes distribués Plusieurs technologies existent : Les sockets
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Introduction à Visual Studio C++ (VC++)
Les sockets.
Les RPC remote procedure call
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
Ingénierie des réseaux - Chapitre 2 bis Les sockets en Java
Le Browser hiérarchique de Classes Java : En quoi cette application pourra faciliter le travail de Mr Leblanc ?
Java RMI: Remote Method Invocation
Master 1 SIGLIS Systèmes d’Information pour l’entreprise – Java RMI Stéphane Tallard Mise en œuvre de l’exemple Bonjour RMI Master 1 SIGLIS1 Intégration.
Les Servlets Présentation Cycle de vie Principe de fonctionnement
Service de vidéo à la demande Projet Tutoré : Groupe C3 Université Paris 5.
Plate-forme de réalisation d’agents mobiles. Plan Introduction La plate-forme Voyager implantation Conclusion.
Architecture Client/Serveur
AXIS Implémentation des echanges type RPC en XML (XML RPC ou JAX-RPC API)‏ Framework à installer au-dessus de Tomcat JDK récent.
L. Gurret – M. Herve – P. Mignon – J. Prarioz. Introduction  Dernière étape d’analyse  Cahier des charges, spécifications et conception orientée objet.
Remote Method Invocation
Java Remote Method Invocation
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
Sockets/rmi - Y. Bekkers1 Applications réparties en Java Paquetage java.net – Sockets Objets distants transparents – RMI Yves Bekkers.
DWR Jean-Jacques LE COZ. Introduction Projet DWR Framework AJAX Projet Open Source commencé en 2004 Licence GPL (Apache Software License v2) Sponsorisé.
Transcription de la présentation:

Java Remote Method Invocation (RMI) Par Achraf Gazdar

Plan Introduction Exemple d’un client-serveur d’Echo Étapes de création de l’application : Serveur Client Compilation Exécution sur une même machine Exécution sur des machines différentes

Introduction Java RMI permet de créer des applications réseau où : Le client et le serveur sont en Java Le client peut utiliser des objets situés sur le serveur comme s’ils étaient locaux La couche réseau devient transparente aux applications client/serveurs Application RMI : développement coté serveur + développement coté client

Exemple : Application « Echo » msg1 Client Serveur [msg1]

Étape 1 : Application serveur (l’interface de l’objet serveur) Un objet distant doit implémenter l’interface Remote de java.rmi Les méthodes distantes sont celles qui appartiennent à une interface dérivée de la classe Remote

Étape 2 : Application serveur (Écriture de l’objet serveur) I Implémentation de l’interface distante précédente par une classe Cette classe doit dériver de UnicastRemoteObject qui permet l’invocation de méthodes distantes

Étape 2 : Application serveur (Écriture de l’objet serveur) II Publication du service offert par le serveur dans le service annuaire Cet annuaire sera utiliser par les clients pour chercher les services du serveurs Publication à travers la méthode rebind de la classe Naming : Naming.rebind(String nom, Remote obj) nom : nom du service obj : objet serveur

Étape 2 : Application serveur (Écriture de l’objet serveur) III

Étape 3 : Application serveur (Compilation de la partie serveur) Compilation du fichier interEcho.java de l’interface interEcho Compilation du fichier srvEcho.java de la classe srvEcho Obtention des .class : interEcho.class et srvEcho.class

Étape 4 : écriture du client I On écrit un client à qui on passe en paramètre l’URL du serveur d’écho et qui : lit une ligne tapée au clavier l’envoie au serveur d’écho affiche la réponse que celui-ci envoie reboucle en 1 et s’arrête lorsque la ligne tapée est « fin »

Étape 4 : écriture du client II Localisation du service par serveur=(interEcho) Naming.lookup(urlService); urlService : rmi://machine:port/nom_service

Étape 5 : Génération des .class nécessaires Compilation du client et obtention du cltEcho.class Pour dialoguer avec le serveur le client a besoin d’une image du service serveur localement c’est le fichier de Stub Obtenu par : Exécution de la commande rmic srvEcho sur le serveur Obtention de deux fichiers : srvEcho_stub.class et srvEcho_Skel.class Copie de srvEcho_stub.class et de interEcho.class avec le client

Étape 5 : Génération des .class nécessaires (Résumé) Côté serveur : interEcho.class srvEcho.class srvEcho_stub.class Côté client : cltEcho.class

Étape 6 : exécution de l’application sur une même machine Préparatif : lancement du service d’annuaire start c:\borland\jbuilder\jdk15\bin\rmiregistry Lancement du serveur (à partir du répertoire du serveur) start c:\borland\jbuilder\jdk15\bin\java srvEcho Lancement du client : c:\borland\jbuilder\jdk15\bin\java cltEcho rmi://localhost/srvEcho

Exécution sur deux machines différentes Client Linux : copier dans le même répertoire les .class suivants : cltEcho.class interEcho.class srvEcho_stub.class Serveur : dans le même répertoire il faut prévoir les .class suivants : srvEcho.class srvEcho_Skel.class