Récupérez le fichier HW.zip nécessaire au fonctionnement de l'application et décompressez le chez vous
Exécutez le programme en local :
Se placer dans le dossier HW/HW, et initialiser l'ORB :
tnameserv -ORBInitialPort 10000
Se placer dans le dossier HW, et lancer le serveur (mais pas trop loin :-) ) :
java Server -ORBInitialPort 10000
Toujours dans le dossier HW, lancer le client :
java Client -ORBInitialPort 10000
Exécutez le programme sur plusieurs machines :
Se placer dans le dossier HW/HW, et initialiser l'ORB :
tnameserv -ORBInitialPort 10000
Se placer dans le dossier HW, et lancer le serveur :
java Serveur -ORBInitialPort 10000 -ORBInitialHost machine_de_l_ORB
Toujours dans le dossier HW, lancer le client :
java Client -ORBInitialPort 10000 -ORBInitialHost machine_de_l_ORB
Récupérez le fichier Carre.zip nécessaire au fonctionnement de l'application et décompressez le chez vous
Exercice 1 :
Puis lancer le client :
java Client <IOR_du_serveur> <nombre>
Essayez de changer le code pour changer le comportement du programme (cube, racine ou autre).
N'oubliez pas de tuer le serveur quand vous avez terminé
Installation d'OpenORB 1.3.0
Récupérez l'archive et sauvegardez la dans votre répertoire personnel en utilisant les commandes suivantes :
cd ~
wget http://umn.dl.sourceforge.net/sourceforge/openorb/OpenORB-1.3.0.tgz
Désarchivez l'archive dans votre répertoire personnel et renommez le dossier ainsi créé :
# cd ~
tar xzf OpenORB-1.3.0.tgz
mv OpenORB-1.3.0 OpenORB
Positionnez la variable JAVA_HOME et vérifiez que celle-ci a bien été positionnée :
export JAVA_HOME=<chemin vers la JRE Java>
echo $JAVA_HOME
Positionnez la variable CLASSPATH de manière à ce qu'elle pointe vers tous les fichiers .jar du répertoire lib du répertoire d'OpenORB : Essayez de trouver vous-même la solution avant d'aller voir ici.
Ouvrez un terminal, placez vous dans un répertoire quelconque et lancez la commande du compilateur IDL :
java org.openorb.compiler.IdlCompiler
Si tout s'est bien passé, une liste d'options doit s'afficher. Dans le cas contraire, abandonnez le tp, vous n'y arriverez jamais! :-) (ou répétez les étapes précédentes
en vérifiant les valeurs...)
Compilateur IDL vers Java
Exercice : un convertisseur euro basique avec POA On se propose de faire une implémentation CORBA d'un objet Euro défini par le diagramme UML suivant :
Euro |
---|
-devise : string -taux : double |
+toEuro(devise: double):double +toDevise(euro:double):double +setTaux(_taux:double):void +setDevise(_devise:string):void |
Vous devrez fournir un rapport d'une dizaine de pages (15 max) expliquant votre projet, le cahier des charges que vous vous êtes fixé, vos choix de programmation et le déroulement de votre travail.
La complexité de votre modèle sera noté, le but étant de remplir efficacement les séances de tp (5 séances de 4h), il sera donc à vous de gérer votre temps pour pouvoir effectuer les tâches suivantes dans le temps imparti :
Définition du projet (réflechissez bien avant de vous lancer),
Etablissement d'un cahier des charges (objectif du projet, des besoins des applications clientes, des solutions apportées par le serveur),
Définitions des fichiers interface idl permettant les communications client/serveur,
Définitions des applications clientes et serveur.
La présence aux séances de tp est nécessaire pour que je puisse suivre vos choix, vos méthodes de travail et vous orienter.
Le jour de la présentation, vous fournirez votre rapport et vos sources accompagnées des instructions de compilation détaillées nécessaires au fonctionnement de votre programme.
Les dernières deux heures seront dédiées aux présentations de vos projets sur ordinateur.