Tp1 2020 M RSD Construction d ? applications réparties TP N Java RMI Exercice Dans ce qui suit nous allons considérer les codes suivants modi ?cation légère par rapport au TD import java rmi Remote import java rmi RemoteException public interface ObjetSIn
M RSD Construction d ? applications réparties TP N Java RMI Exercice Dans ce qui suit nous allons considérer les codes suivants modi ?cation légère par rapport au TD import java rmi Remote import java rmi RemoteException public interface ObjetSInterface extends Remote public String miroir String a throws RemoteException import java rmi Remote import java rmi RemoteException public interface ObjetCInterface extends Remote public int mul int a int b throws RemoteException TTT est une nouvelle interface par rapport au TD import java rmi Remote import java rmi RemoteException public interface TTT extends Remote public int add int a int b throws RemoteException ObjetS implémente une seule interface contenant une seule méthode miroir import java rmi import java rmi server public class ObjetS extends UnicastRemoteObject implements ObjetSInterface public ObjetS throws RemoteException public String miroir String a throws RemoteException String r for int i a length i i-- r a charAt a length -i r return r CObjetC implémente interfaces une méthode par interface add et mul respectivement import java rmi import java rmi server public class ObjetC extends UnicastRemoteObject implements ObjetCInterface TTT public ObjetC throws RemoteException public int mul int a int b throws RemoteException return ab public int add int a int b throws RemoteException return a b import java rmi import java rmi registry LocateRegistry public class ServeurSC public static void main String args try LocateRegistry createRegistry catch RemoteException e System err println rmiregistry est déjà lancé sur ce port System exit try ObjetS objets new ObjetS System out println objets Naming rebind Miroir objets ObjetC objetc new ObjetC System out println objetc Naming rebind Multi objetc System out println Le serveur est pret catch Exception e System err println Erreur e getMessage import java rmi class ClientSC public static void main String argv try ObjetSInterface s ObjetSInterface Naming lookup Miroir une seule interface System out println s System out println s miroir RSDJAVARMI dans ce qui suit caster avec la première interface pour appeler mul ObjetCInterface a ObjetCInterface Naming lookup Multi System out println a System out println a mul TTT b TTT a caster avec la deuxième interface pour appeler add System out println b System out println b add catch Exception e System err println Erreur e getMessage C Dans ObjetS mettez la ligne public ObjetS throws RemoteException en commentaire C ? est quoi le problème Reprenez votre code et retirez throws RemoteException de la déclaration du constructeur C ? est quoi le problème Reprenez votre code et lancez ServeurSC plusieurs fois Examinez le numéro de port de chaque objet comment se fait le choix de ce port En examinant la documentation de la classe UnicastRemoteObject https docs oracle com javase docs api java rmi server UnicastRemoteObject html Installez ObjetS sur le port et ObjetC sur le port utilisez le constructeur de la classe UnicastRemoteObject Exécutez à nouveau ServeurSC pour véri ?er Peut-on installer les deux objets sur le port Faites un test Installez les deux objets sur le port Comment se fait le choix du
Documents similaires










-
32
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Mar 05, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 46.2kB