LES SYSTEMES REPARTIS (NFP 214&215)
Projet 2
15/04/2017
Par J. LAFORGUE
page 1
Cnam
CONSERVATOIRE
N A T I O N A L
D E S A R T S
E T M E T I E R S
CENTRE REGIONAL
MIDI - PYRENEES
1. SPECIFICATION
L'objectif de ce projet 1 est de réaliser 3 programmes successifs :
ETAPE 1: un jeu de SUDOKU à 2 joueurs en réseau en utilisant le protocole RMI
ETAPE 2 : faire le même programme que l'étape 1 mais en utilisant une implémentation CORBA avec
le logiciel Jacorb.
ETAPE 3 : étendre le programme précédent (en RMI et/ou Jacorb) afin que tous les joueurs d'un réseau
local puissent se choisir et jouer entre eux.
Le présent sujet décrit l'étape 2. La description de l'étape 3 fera l'objet un peu plus tard d'un document
complémentaire.
Pour réaliser l'étape 2, vous devez utiliser, sans les recopier, les classes du projet 1. Vous n'avez pas normalement
besoin de modifier les classes de projet 1 pour faire le projet 2 (surtout si vous utilisez les classes de la correction
du projet 1).
Cette étape n'utilise pas les fichiers de l'étape 1.
Cette étape consiste à exécuter l'applicatif de jeu développé dans le cadre du projet 1 dans un objet distribué (le
serveur) et de pouvoir exécuter les ihms de jeu (1 par joueur) qui sont des programmes clients du serveur.
Le serveur accepte en paramètre :
le nom dans le service de nommage de l'objet distribué de la forme CNAMP_N_SUDOKU (exemple:
CNAMP_1_SUDOKU)
le nombre de colonne de la grille
le nombre de ligne de la grille
le nombre de colonne de la région
le nombre de ligne de la région
Le client accepte en paramètre :
le nom du joueur
le nom dans le service de nommage de l'objet distribué de la forme CNAMP_N_SUDOKU (exemple:
CNAMP_1_SUDOKU)
IPST-CNAM
Cycle C
Années 2006-2007
J. LAFORGUE
LES SYSTEMES
REPARTIS
PROJET 2
Etape 2
LES SYSTEMES REPARTIS (NFP 214&215)
Projet 2
15/04/2017
Par J. LAFORGUE
page 2
2. ARCHITECTURE DES REPERTOIRES
Le projet doit être fait suivant l'architecture type de répertoires et fichiers suivants :
projet1
........
projet2
etape2 compil.bat le script de compilation de l'étape 1 qui appelle ant
build.xml le fichier ant de génération
runNS.bat le script d'exécution du service de nommage
runAppSudokuServeur.bat le script d'exécution du serveur
runIhm1Sudoku.bat le script d'exécution du 1er joueur qui se connecte
au serveur
runIhm1Sudoku.bat le script d'exécution du 2ème joueur qui se
connecte au serveur
AppSudokuServeur.java le serveur en CORBA
IhmClient.java le client d'un joueur
etc
jacorb.properties propriétés d'exécution Jacorb
cnamp
app
AppSudokuOD.java L'objet distribué
AppSudokuODInt.idl FIchier idl décrivant l'interface IDL
ihm
IhmSudokuCorbaImp.java
generated répertoire contenant le répertoire du nom de
l'interface IDL qui contient les classes Java
générées suite à la compilation de l'interface
classes répertoire contenant les fichiers .class issus de la
compilation de tous les fichiers .java
Cette architecture est celle de l'atelier 20 vu en cours.
Les fichiers build.xml, compil.bat, runNS.bat sont ceux de l'atelier 20 dans lequel il est nécessaire de faire des
modifications afin de l'adapter au projet.
Ces fichiers vous sont fournis.
3. TRAVAUX A REALISER
Vous devez créer les classes suivantes pour l'implémentation du serveur :
AppSudokuServeur.java
est le programme principal du serveur qui crée l'objet distribué CORBA AppSudokuOD et qui
l'enregistre dans le service de nommage.
Ce programme crée l'ORB et le POA et s'exécute sur l'ORB afin de traiter les requêtes CORBA.
AppSudokuOD.java
est l'objet distribué qui encapsule AppSudoku AppSudokuOD et qui implémente les méthodes
distantes de l'interface IDL
AppSudokuODInt.idl
LES SYSTEMES REPARTIS (NFP 214&215)
Projet 2
15/04/2017
Par J. LAFORGUE
page 3
est l'interface de l'objet distribué qui décrit les méthodes distantes accessibles par les clients et qui
définit les type des données IDL échangés dans les appels distants des méthodes de l'interface
Vous devez créer les classes suivantes pour l'implémentation du client :
IhmClient.java
est le programme principal qui crée IhmSudokuCorbaImp afin de le passer en paramètre d'une
instanciation de IhmSudoku
IhmSudokuCorbaImp.java
est une classe qui implémente l'interface AppSudokuInt dont chaque méthode implémentée utilise les
méthodes distantes de l'interface IDL.
4. QUELQUES CONSEILS
Ecrire en premier l'interface IDL et la compiler. Cela vous permet d'éditer les fichiers java générés afin de savoir
comment les utiliser.
Pour connaître la signature des méthodes de l'interface IDL, éditer le fichiers <nom de
l'interface>Operations.java.
Les commandes d'exécution utilisent le script jaco.bat (répertoire bin de Jacorb). Ce script utiliser
%CLASSPATH% qu'il faut renseigner afin qu'il référence les répertoires d'accès aux fichiers .class du projet 1.
Je rappelle que vous devez définit les variables d'environnement :
ANT_HOME répertoire d'instalaltion de ant
JACORB_HOME répertoire d'installation de Jacorb
JAVA_HOME répertoire d'installation de Java
PATH ajouter dans le path l'accès au répertoire bin de Jacorb
Pour exécuter le projet 2 étape 2 :
1) Exécuter le Services de Nommage (runNS.bat)
2) Exécuter le serveur qui crée l'objet distrib
3) Exécuter 2 fois l'ihm cliente afin de pourvoir jouer entre 2 joueurs
1 / 3 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !