Professional Documents
Culture Documents
Anne 2007/2008
JXTA TP 1 - 2
1 Informations Prliminaires
1.1 Comment compiler et excuter un programme JXTA 1.1.1 Si vous utilisez Eclipse comme environnement de travail
1) Crer sous clipse un nouveau projet TP1-TIP2P partir de larchive tp2-tip2p.zip dzippe.
Ce projet se dcompose en deux rpertoires : lib contient lensemble des fichiers .jar ncessaires la compilation et lexcution de vos programmes sous JXTA. test contient les fichiers de prise en main de JXTA propagate contient les fichiers pour la dernire partie des expriences
Pour excuter l'application il faut rajouter, aussi les autres bibliothques dans le rpertoire lib.
java -classpath ./lib/jxta.jar:./lib/bcprov-jdk14.jar:(...):. test.fichier
2 Activits
2.1 Helloworld
Analysez, testez et commentez la classe HelloWorld.java. Idntifiez les structures de base pour dclarer un peer jxta, pour se connecter un groupe et afficher un advertisement. ATTENTION : pour le premier lancement de JXTA, il est ncessaire de configurer votre machine.
Remarque : Si tout sest bien pass, un rpertoire .jxta a t cr dans votre rpertoire courant.
2.4 Caches
Modifiez le code de GroupCreate pour changer le nom de votre groupe. 1. Excutez une instance de GroupDiscovery et une instance de GroupCreate (dans des rpertoires diffrents). Quels sont les groupes affichs (la dcouverte peut prendre un certain temps) ? 2. Effacez le rpertoire .jxta/cm (le rpertoire o est stock le cache des ressources) 3. Refaire l'tape 1 4. Modifiez le code de GroupDiscovery afin d'utiliser la mthode getLocalAdvertisements(int type, String attribute, String value). Quelle est la diffrence entre cet appel et celui de getRemoteAdvertisements() ?
: lit le fichier de publication examplepipe.adv, cre un input pipe et coute les messages dans ce pipe. PipeExample : lit le fichier de publication examplepipe.adv, cre un output pipe et envoie les messages dans ce pipe.
PipeListener
1. Analyser,
et commenter le code des classes PipeExample.java et PipeListener.java. Idntifiez les procdures lies l'envoi et la rception des messages, ainsi qu' la dclaration des ressources (pipe).
tester
2.6 Diffusion
Les pipes utiliss jusqu' prsent ont servi uniquement pour la communication entre deux peers. Afin d'envoyer un message plusieurs peers, nous pouvons utiliser un PropagatePipe . 1. Cherchez dans la documentation une description des caractristiques des PropagatePipe. 2. Allez dans le rpertoire propagatePipes. tudiez attentivement le code de sender et receiver, et indiquez dans le rapport s'il existent des diffrences entre la dclaration d'un PropagatePipe et d'un Pipe standard . 3. Faites tourner sender et deux instances de receiver (rpertoires receiver1 et receiver2) et dcrivez ce que vous observez. 4. cause d'un oubli, les messages envoys ne portent aucune information. Corrigez le code de sender. Vous pouvez vous inspirer du code de PipeExample (et faites attention envoyer des informations dans le format attendu par receiver).
3 Rapport
Envoyez un fichier ZIP avec vos rapports en format PDF et le code que vous avez crit (exercice 2.6) l'adresse Luiz-Angelo.Steffenel@univ-reims.fr. N'oubliez pas de mettre le nom des membre du binme.