Questions de Révisions

Conception de logiciels Intranet : patrons et canevas

Modérateurs : Douin, graffion

Vivel
Messages : 44
Inscription : 19 févr. 2018 13:27

Questions de Révisions

Message par Vivel » 14 juin 2018 14:40

Bonjour,
Dans le sujet 2015, Question2-2) vous mettez cette ligne dans le constructeur :

Code : Tout sélectionner

UnicastRemoteObject.exportObject(this,0);
  • je ne comprends pas pourquoi le constructeur…
    Est ce qu'on aurait pu faire un extends UnicastRemoteObject plutôt ?
    ou se passer de la ligne dans le constructeur ou du extends et plutôt le faire dans un main ?
[/b]

J'espère que je suis claire… voici les élèments de cours que j'ai trouvé pour appuyé ma demande.
si je reprends votre slide 58 du cours RMI il y a deux moyens :

Code : Tout sélectionner

le proxy est généré 
- soit en héritant de la classe UnicastRemoteObject 
	public class GroupeDeDsicussion extends UnicastRemoteObject implements Remote{}
- soit en « exportant dynamiquement » le service
	IndividuImpl lambda = new IndividuImpl(args[0]);
	Remote stub = UnicastRemoteObject.exportObject(lambda, 0);

Puis : 
Recherce du service
- soit en utilisant la classe java.rmi.Naming
	Naming.rebind(AffichageLointain6.nomDuService, serveur);
– soit directement
	Registry registry = LocateRegistry.getRegistry(); 
	registry.rebind(args[0], stub);
merci

mais c'est toujours dans le main qu'on trouve cette ligne… d'où mon incompréhension.
les exemples code que j'ai pu trouver :

Code : Tout sélectionner

soit dans un main : 
Individu lambda = new IndividuImpl(args[0]);
Remote stub = UnicastRemoteObject.exportObject(lambda, 0); // on récupère un proxy
Registry registry = LocateRegistry.getRegistry(); // on récupère l'annuaire
registry.rebind(args[0], stub); // enregistrement du service auprès de l'annuaire


// ou :
Remote stub = UnicastRemoteObject.exportObject(lambda, 0); // on récupère un proxy
Naming.rebind(lambda.nomDuService, lambda); // enregistrement du service auprès de l'annuaire

Douin
Messages : 255
Inscription : 18 mars 2009 15:46

Re: Questions de Révisions

Message par Douin » 18 juin 2018 11:28

Bonjour,
je ne comprends pas pourquoi le constructeur…
Est ce qu'on aurait pu faire un extends UnicastRemoteObject plutôt ?
Oui ce sont deux façons de faire, soit un service rmi par instance
ou se passer de la ligne dans le constructeur ou du extends et plutôt le faire dans un main ?
plus difficile à faire dans une méthode classe comme main

à suivre...

Vivel
Messages : 44
Inscription : 19 févr. 2018 13:27

Re: Questions de Révisions

Message par Vivel » 18 juin 2018 12:19

merci

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité