(Remote Method Invocation)
Invoquer une méthode d’un objet distant
•objetDistant.methode();
Passer un Objet Distant en paramètre à
une méthode locale...
Client Serveur
Objet Distant
Attributs
Méthodes
Skeleton
Port = xxx
Naming Service : IP et Port
Stub
Port = xxx
Nom Objet ...
(1) Créer les interfaces des objets distants
(2) Créer les implémentation des objets distants
(3) Créer le serveur RMI - g...
• Doit Hériter de la classe Remote :
extends Remote
• Les méthodes doivent lever l’exception :
RemoteException :
throws Re...
• Doivent hériter de la classe :
UnicastRemoteObject
extends UnicastRemoteObject
• Doivent implémenter l’interface définit...
• Démarrer le service de nom (rmiregistry) :
LocateRegistry.createRegistry(1099)
;
• Instancier l’objet distant :
NomClass...
• Créer le stub : Lire les référence de l’objet
distant dans l’annuaire :
<NomIntface> NomStub =
(<NomIntface>)
Naming.loo...
Chap4 cliserrmi
Chap4 cliserrmi
Prochain SlideShare
Chargement dans…5
×

Chap4 cliserrmi

348 vues

Publié le

Diapos de cours sur les RMI - JAVA
programmation cleint serveur : Appel distant de méthodes

Publié dans : Ingénierie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
348
Sur SlideShare
0
Issues des intégrations
0
Intégrations
16
Actions
Partages
0
Téléchargements
13
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Chap4 cliserrmi

  1. 1. (Remote Method Invocation)
  2. 2. Invoquer une méthode d’un objet distant •objetDistant.methode(); Passer un Objet Distant en paramètre à une méthode locale ou distante • resultat=objetLocal.methode(objetDistant); • resultat=objetDistant.methode(autreobjetDistant);
  3. 3. Client Serveur Objet Distant Attributs Méthodes Skeleton Port = xxx Naming Service : IP et Port Stub Port = xxx Nom Objet Distant Ref Objet distant Objet 1 Ref1 : IP/PORT/@m Objet 2 Ref2 : IP/PORT/@m 1. Créer L’objet distant 2. Publier la référence de l’objet 3. Récupérer la référence de l’objet 4. Créer le stub 5. Connexion 7. Appel 10. Résultat 7. Appel 11. Résultat 8. Appel 9. Résultat
  4. 4. (1) Créer les interfaces des objets distants (2) Créer les implémentation des objets distants (3) Créer le serveur RMI - générer le skeleton (4) Créer le client RMI - générer le stub (5) Déploiement Lancement • Lancer l’annuaire RMIREGISTRY • Lancer le serveur • Lancer le client
  5. 5. • Doit Hériter de la classe Remote : extends Remote • Les méthodes doivent lever l’exception : RemoteException : throws RemoteException • Les Objets utilisés doivent être sérializable.
  6. 6. • Doivent hériter de la classe : UnicastRemoteObject extends UnicastRemoteObject • Doivent implémenter l’interface définit précédement  Redéfinir tous les méthodes • Posséder un constructeur sans ou avec paramètres, permettant de lever l’exception : RemoteException.
  7. 7. • Démarrer le service de nom (rmiregistry) : LocateRegistry.createRegistry(1099) ; • Instancier l’objet distant : NomClasse noj = new NomClasse(); • Publier le référence de cette objet dans l’annuaire : Naming.rebind("rmi://NomServeur:109 9/NOBJ",noj);
  8. 8. • Créer le stub : Lire les référence de l’objet distant dans l’annuaire : <NomIntface> NomStub = (<NomIntface>) Naming.lookup("rmi://NomServeur:10 99/NOBJ"); • Appeler les méthodes de l’objet distant via le stub : NomStub.NomMethode()

×