Université Louis Pasteur
LICENCE 3ème année


 

Travaux Pratiques
de

Programmation Distribuée

(sujet n°5)

CORBA - Service de nommage



Télécharger ces exemples.

Dans le répertoire Nommage, vous trouvez un exemple d'utilisation du service de noms. Cet exemple est compilable (commande ./compile) et exécutable (les commandes à exécuter sont présentées dans les fichiers Serveur.java et Client*.java).

A travers les questions suivantes, on vous demande de mettre au point certains services pour une banque.


Exercice 1

Fabriquer un fichier Compte.idl dans lequel sont définis les services suivants qui peuvent s'appliquer à un certain compte client :

    // dépose un certain montant sur un compte
      void deposeBillets(Flottant);

    // retrait d'argent du compte (mais vous n'autorisez pas le découvert !)
      boolean retireBillets(Flottant);

    // affiche le montant deposé sur le compte
      Flottant afficheMontant();

    // vire une somme du compte courant vers le compte spécifié en paramètre
    // si le montant du compte est insuffisant l'opération n'est pas réalisée
    // et false est retourné
      boolean virementCompteaCompte(Flottant, Compte);



Exercice 2 

Réaliser une implémentation CompteImpl.java pour l'interface Compte.idl. Créer un fichier ./compile qui vous permet de compiler l'interface Compte.idl et le fichier CompteImpl.java .


Exercice 3

Réaliser un Serveur (Serveur.java) qui crée deux comptes clients et les publie sur le serveur de nom. Le nom de la machine hébergeant le serveur de noms sera passé en argument du programme.


Exercice 4

Réaliser un Client (Client.java) qui :
Entre chaque opération vous afficherez un message qui indique les montants sur les deux comptes.


Exercice 5

Construire un deuxième Serveur (Serveur2.java) qui crée un contexte. Celui-ci correspond à un nom d'agence bancaire. Dans cette agence bancaire, vous créerez deux contextes correspondants à deux noms de clients différents. Vous créerez enfin deux comptes par client qui seront associés à des objets CORBA de type Compte.


Exercice 6

Réaliser un Client (Client2.java) qui utilise Serveur2 et :
Entre chaque opération vous afficherez un message qui indique les montants sur les quatres comptes.






[Page réalisée à partir d'un document de Guillaume Latu]