TP6 : callback CORBA
Téléchargez cette archive contenant
des exemples à tester et à compléter.
Exercice 0
Reprendre l'exemple de mécanisme de callback vu en TD, qui
utilisait le POA et le service de nommage.
L'implanter et le tester
avec un serveur, un client enregistré et plusieurs clients
normaux sur des machines distantes.
Exercice 1
Se rendre dans le répertoire TelephoneExo
.
- Examiner les fichiers
*.java
.
- Compiler le code en exécutant le script
./compile
.
- Exécuter le serveur et les clients.
- Transformer ces codes afin d'avoir uniquement des appels distants
non bloquants (en utilisant
oneway
).
Pour les deux premières méthodes du fichier Annuaire.idl
,
cela impliquera nécessairement de passer par un mécanisme de CallBack.
Vous pourrez utilisez un objet de rappel du type suivant :
interface Afficheur {
oneway void afficheRes(in string res);
oneway void arreteORB();
};
Exercice 2
Se rendre dans le répertoire ServeurDiscussion
.
- Examiner les fichiers
*.java
.
- Compiler le code en executant le script
./compile
.
- Exécuter le serveur et le client (qui ne fonctionnent pas encore bien !)
- Compléter les méthodes
login
et chat
dans ServeurDiscImpl
.
- Exécuter le serveur. Puis lancer plusieurs clients.
- Que se passe-t-il si l'un des clients est tué (par
Ctrl+C
par exemple) et qu'un autre client connecté émet un
message ?
- Résoudre le problème que cela pose !
[Page réalisée à à l'aide
d'un document de Guillaume
Latu]