Home

Travail d`Etude et de Recherche Communautés instantanées par

image

Contents

1. 5 Contenu du livrable 5i R pertoume lent E Die mt RAR Ra aaa 5 2 R pertoire Web Services 5 9 Le r pertoire plugins 4 4 2 4 5 8 Ras de RR GU TROU Wem ug 5 4 Le r pertoire doc s seny y omm ESSE 5 5 Be repert ire lib aA ho a a a a EAA EAE eh Sw 6 Synth se 6 1 Bilan technique 4 4 233122 5 nee heh ba RES REA 60 1 T Bilan fonctionnel 5 sis Re de B ee LL 6 1 2 Bilan non fonctionnel 6 1 3 V rification et Validation 6 2 Bilan personnel seau 4468 an N aestum aed a A D finitions et acronymes Ack Web Services eum Zac Bus AREAS AEG RES A Protocole SOAP ic y E Eee EE ERP eae eee IRR BRE ARS LOMA AS D DE AA D DPI Wild dep D TTL AT Spa Lips ns RU de XU eR IRIS dt a mes BO Se Sea ut NT S RR S As Protocole XMPP amp RR Ra A Ov Jabber EL rir kA N uasa Eu unti sos de Ae e o Mss e ei dioses ATO TETES ogra de ae YM he DE tert a a he aS AIT Client XMPP i oe ee EEE nee ee BE AA2PDA ae duum a dd Sotho fale 9 09 ard dd b dud eee wee el ROO CALL BO ne ea As ACTA MySAlfu 43 A 2 ied neice LA LE Pme CE i LOS xo et 3 P bk A T5 Apache Tomcat iisi uem BR Ee ge pente Re TR RNA VAN D SEO e nh RA B Clients XMPP test s B 1 Clients XMPP fon
2. 10 3 3 1 R daction de la documentation 10 3 3 2 Pr paration de la soutenance 10 4 Travail r alis 11 4 1 Architecture logicielle 11 4 1 1 Architecture g n rale 11 4 1 2 D ploiement sur Tomcat des applications Axis et Wildfire 12 4 2 Client xiu eim sese d LUE ae ARS ca OPA OR tae cb Me dated 12 42 1 Client l ger LE ee OE d s xm 12 4 2 2 Client lourd 2 v e se aa an OG Ee EER ES 13 4 3 Int gration des Web services 15 43 L C T a a ommo RR Ene ORDRES ces de A gs 15 4 3 2 Cot client s sisala ae se non nee ee ee IIR AS 15 4 3 3 Gestiondesezceptions 17 4 3 4 Tests unitaires a o EUR we a ETAT eO 6m 18 4 4 Plugin serveur cu ceo Rum om RR ease hi 19 AAT Administration 4 4 4 44 AAA REE EE AU een 19 442 V rification ee aa AOE ee ER 20 4 4 3 Classes utilitaires a o a 21 4 4 4 Politique de gestion des communaut s instantantes 22 3 TABLE DES MATI RES 4 4 5 Internationalisation de la console css 4 4 6 Probl mes rencontr s 4 5 R partition des t ches
3. 10 04 2006 20 04 2006 7 3 Tests et Documentation 10 04 2006 20 04 2006 9 1 ler Lot 17 04 2006 17 04 2006 2 me Lot h 10 Prise en compte des retours 24 04 2006 30 04 2006 Effectif 7 1 Base 10 04 2006 17 04 2006 1 1 2 Console d administration 10 04 2006 17 04 2006 7 2 Ameliorations 19 04 2006 03 05 2006 7 2 2 Console de tests 19 04 2006 03 05 2006 9 1 ter lot 18 04 2006 18 04 2006 2 me lot 9 3 3 me lot 09 05 2006 09 05 2006 m B Base du serveur Bi Am liorations du serveur Prise en compte des retours am liorations H Remises des lots Fic 3 2 Planning pr visionnel et effectif concernant la partie serveur Nous avons tudi diff rentes mani res d utiliser les web services en utilisant Axis et Wildire comme deux applications web ind pendantes Nous n avons pas r ussi faire communiquer Axis avec notre plugin dans Wildfire en int grant Axis directement au plugin Apr s de nombreux posts sur les forums de Jive software il est apparu que cette solution nous aurait pris beaucoup de temps sans aucune garantie d obtenir un r sultat en int grant Axis dans wildfire Cette solution nous est apparue comme tant la meilleure tant donn le temps qui nous tait imparti Nous avons effectu en parall le des recherches dans le sens des deux premi res solutions avant de changer d architecture pour adopter la troisi me Ce changement nous a pris une journ e 10 CHAPITRE 3 PLANNING DU PROJET 3 3 Document
4. cl s Dans un fichier XML pour PC save zml Dans un fichier properties pour Pocket PC save properties 43 INT GRATION DES WEB SERVICES 15 4 3 Int gration des Web services 4 3 1 Cote serveur L int gration de Web services comme interm diaire entre le client et le serveur de la messagerie instantan e garantit une utilisation ind pendante des plate formes du client Le Web service du serveur nomm Ws2Wf Web service To WildFire permet donc de communiquer avec le plugin Wildfire partir d un client Ce Web service propose toutes les methodes n cessaires pour que le serveur de la messagerie instantan e puisse g rer le client ajouter le client l affecter un ou plusieurs salons Nous avons utilis Apache Axis afin d impl menter notre Web Service Enfin le d ploiement du Web Service s effectue l aide d un fichier de deploiement sp cifique notre Web service qui est le fichier WSDD 4 3 2 Cote client Nous avons d velopp deux types de client le client l ger et le client lourd Le client l ger est une page Web auquel l utilisateur peut acc der simplement avec son navigateur La communication entre le client et le serveur est bas e sur le protocole HTTP Puis la Servlet du client l ger effectue les appels Web Services protocole SOAP Le client l ger n a donc pas d interaction directe avec les Web Services Client Le tiers web services Le tiers m tier FIG 4 5 Architectur
5. commerciale Il utilise le seul protocole open source tr s largement r pandu pour faire de la messagerie instantan e XMPP galement appel Jabber Wildfire est facile installer et administrer mais offre des garanties de s curit et de performance A Spark Spark est un client de messagerie instantan e respectant le protocole XMPP A 8 Protocole XMPP XMPP est un sigle signifiant eXtensible Messaging and Presence Protocol Protocole extensible de pr sence et de messagerie C est le nom d un standard de l IETF en d veloppement constant ouvert et bas sur XML L impl mentation la plus connue est Jabber A 9 Jabber Jabber est un syst me standard et ouvert de messagerie instantan e s curis e et sans spam de notification de pr sence de collaboration et d change multim dia Jabber est un ensemble de protocoles fond sur le langage XML Des logiciels fond s sur Jabber sont d ploy s sur des milliers de serveurs sur l Internet et sont utilis s par plus de dix millions d utilisateurs 1 en septembre 2003 soit bien avant l ouverture de Google Talk travers le monde Le protocole lui m me est maintenu par la Jabber Software Foundation et est standardis par l IETF sous le nom XMPP la diff rence des autres syst mes de pr sence et de messagerie instantan es populaires Jabber est congu de mani re plus large et ouverte que le simple chat Jabber est ainsi galement utilis par les entreprises
6. d tre mise jour 4 4 3 Classes utilitaires 4 4 3 1 Analyse des mots cl s Toute classe responsable de la recherche des salons par analyse des mots cl s doit imp rative ment impl menter l interface InstantCommunitiesSearch Celle ci contient 3 m thodes index String String ajoute une communaut et ses informations dans l index update recr e l index search String donne la liste des salons correspondant aux mots cl s La classe Amuilndexer utilise l api d Apache Lucene et permet de cr er un fichier en m moire dans lequel sont index s des documents Ces documents sont constitu s de l identifiant de chaque communaut et des informations relatives ces communaut s description sujet nom de la com munaut 22 CHAPITRE 4 TRAVAIL R ALISE L utilisation de Lucene nous permet d affecter l utilisateur aux salons ad quats en faisant une re cherche par proximit des mots cl s dans les informations des communaut s qui ont t index es 4 4 3 2 Gestion des logs Pour pourvoir utiliser au mieux les logs nous avons d cid d impl menter un Handler per sonnalis qui va enregistrer dans une variable les diff rents logs pour pouvoir les afficher sur la console de test 4 4 3 3 Exceptions Deux classes d exceptions ont t impl ment es WrongLoginOrPasswordException est lanc e si le couple login mot de passe n est pas valide LoginAlreadyExists Exception est lanc e lorsqu
7. et administrations dans le cadre d change de donn es entre applications ETL EAI ESB au sein des syst mes d informations mais aussi dans le cadre du grid computing des notifications d alertes ou d informations de la supervision et du monitoring syst me et r seau Jeremie Miller a commenc le projet en 1998 et la premi re version publique est sortie en mai 2000 La principale production du projet est jabberd un serveur permettant aux logiciels clients de se connecter pour discuter Ce serveur permet soit de cr er un r seau Jabber priv derri re un pare feu soit de rejoindre d autres serveurs publics sur Internet pour dialoguer en ligne avec ses correspondants A 10 IETF 35 A 10 IETF L Internet Engineering Task Force abr g e IETF litt ralement traduit de l anglais en D tachement d ing nierie d Internet est un groupe informel international ouvert tout individu qui participe l laboration de standards pour Internet L IETF produit la plupart des nouveaux standards d Internet A 11 Client XMPP Un client de messagerie XMPP est un logiciel qui permet de se connecter un serveur de messagerie utilisant le protocole XMPP A 12 PDA Personal Digital Assistant ou Assistant Personnel Num rique A 13 Imov imov Messenger est un client de messagerie instantan e Jabber XMPP fonctionnant sous Windows Mobile imov Messenger bas sur des standards ouverts est aussi bien compatible avec des syst m
8. pour permettre son utilisation avec de nouvelles classes de tests sans aucune modification de la page Pour l instant les tests v rifient les points suivants le fonctionnement des m thodes de cr ation et de suppression des utilisateurs de commu naut s instantan es le fonctionnement des m thodes de cr ation de modification et de suppression des commu naut s instantan es le fonctionnement des m thodes d affectation des utilisateurs aux communaut s de r affec tation de nouvelles communaut s et de d sabonnement des communaut s en fonction des mots cl s 44 PLUGIN SERVEUR 21 Wildfire Console d Administration Console de test des fonctionnalit s li es aux membres des communaut s instantan es Mozilla Firefox Fichier Edition Affichage Marque pages Outils 2 e Ed http 192 168 0 4 8080 wildfire_2_6_2 plugins ciws ciws tests users jsp test 38result false IG LAE e m 2 Wildfire Admin Console CORRE Serveur Utilisateurs Groupes Sessions Salon de discussion Amui Deconnexion admin Configuration Console de test des fonctionnalit s li es aux membres des communaut s instantan es Propri t s du plugin Communaut s Ici vous pouvez tester les actions r alisables depuis le plugin sur les membres de communaut s instantan es et v rifier leur fonctionnement Les tests doivent Instantan es tre r alis s les uns la suite des autres Visualisation des D
9. sauvegarde associ es au client lourd OU NINININI Analyse par proximit des mots clefs Tests unitaires du client Differenciation entre les communaut s et les salons ordinaires dans la console d administration Propri t s modifiables du plugin dans un fichier de propri t s Internationalisation du client et du plugin Recherche des mots clefs dans un index qui contient toute les informations relatives un salon l gende v fait devenue inutile fait en plus de ce qui tait pr vu initialement l Devenue inutile lorsque nous avons choisi d utiliser des salons de discussion la place des groupes de discussions 2Nous avons par la suite d cid de changer de politique en accord avec nos encadrants et de laisser la suppression des comptes sous la responsabilit de l administrateur 29 30 CHAPITRE 6 SYNTHESE 6 1 2 Bilan non fonctionnel 6 1 2 1 Documentation Manuel de conception Nous avons r dig un manuel de conception en html que nous avons int gr la javadoc du projet Il explique l architecture g n rale du projet Vous trouverez ce manuel en annexe du rapport Manuel d installation L installation du serveur tant longue et compliqu e nous avons r dig un manuel explicatif 6 1 3 V rification et Validation Pour nous assurer du bon comportement de nos programmes nous avons d velopp des
10. soutenance ayant t d cal e au 15 mai nous pouvions pr parer notre soutenance finale du 9 au 14 mai Ceci nous a donc permis de nous concentrer essentiellement sur la r daction du rapport du 2 au 9 mai C tait pour toute l quipe la premi re fois que nous concevions un planning de projet avec autant de rigueur Nous nous rendons compte que cela nous a beaucoup facilit la t che lors de la phase de d veloppement car cela nous fixait des limites et nous donnait un rythme de travail Nous en retenons que la phase de gestion est une tape indispensable la r alisation d une application Chapitre 4 Travail r alis 4 1 Architecture logicielle 4 1 1 Architecture g n rale Vous pouvez observer sur le sch ma ci dessous sch ma 4 1 l architecture g n rale du ler lot gauche et celle de la version finale droite Le sch ma de gauche montre la possibilit de d ployer le client l ger sur un autre serveur que celui de wildfire cf 4 2 1 Celui de droite montre que l application Java communique directement avec le plugin par web services Wildfire Tomcat gii Serveur Client Wildfire Tomcat gii Serveurs Client ciws client leger Fic 4 1 A gauche l architecture du ler lot et droite celle du 2 me 11 12 CHAPITRE 4 TRAVAIL R ALIS 4 1 2 D ploiement sur Tomcat des applications Axis et Wildfire L application Amu
11. tests unitaires pour chacun des l ments de la cha ne de fonctionnement Afin de valider notre projet nous avons r guli rement rencontr nos encadrants pour leur montrer l avancement de notre travail et leur fournir des lots fonctionnels 6 2 Bilan personnel Pour commencer toute l quipe a trouv ce TER tr s int ressant sur de nombreux points Tout d abord il s appuie sur des nouvelles technologies que nous ne connaissions pas Nous avons donc t oblig de nous auto former en lisant de la documentation ou encore en postant sur des forums officiels La complexit du projet et la taille de notre quipe de d veloppement nous ont impos de passer beaucoup de temps sur la gestion de projet Cette t che qui nous a longtemps paru ennuyeuse a rapidement montr son importance puisqu elle nous a permis de nous fixer des objectifs remplir pour chacune des tapes du projet et ainsi d viter d accumuler du retard L importance de notre quipe nous a galement pouss beaucoup communiquer et utiliser des outils de travail collaboratif tels que la base CVS mise disposition par nos encadrants Elle s est d ailleurs rapidement r v l e indispensable Enfin il est gratifiant de savoir que ce TER est la base d un projet plus vaste avec des objec tifs industriels pour France Telecom Il sera d ailleurs suivi d un stage auquel participera Ilya Naraghi Bibliographie 1 Tomcat http tomcat apache org 2 Apa
12. thodes qui sont utilis es par les web services addUserToRoom String String String Boolean ajoute un utilisateur dans les salons cor respondant aux mots cl s Si l utilisateur n existe pas celui ci est cr getRooms rend le nom de tous les salons disponibles sur le serveur getRooms String rend les salons auxquels l utilisateur est inscrit 3 Interface Instant CommunitiesAdmin Toute console d administration devant g rer les communaut s instantan es doit impl menter cette interface Elle permet la console d utiliser les fonctions d administration de base du plugin createRoom String String String String Cr ation et modification de communaut destroyRoom String Suppression de communaut changeRooms String String Modification de l affectation d un utilisateur aux commu naut s createMember String String Cr ation d un utilisateur de communaut instantan e 4 4 2 V rification 4 4 2 1 Console web Le r le de la console de test est de v rifier le bon fonctionnement du plugin en lan ant des tests unitaires et en en visualisant les r sultats L int gration du plugin au sein du serveur Wildfire rend difficile la r alisation de tests JUnit Pour permettre un contr le de qualit nous avons donc mis en place des fichiers de logs et une console de visualisation des logs dans les pages de la console de test Cette console enregistre toute l activit du plugin et a t d velopp
13. Universit de Nice Sophia Antipolis Master Informatique 1 re ann e Travail d Etude et de Recherche Communaut s instantan es par Web Services tudiants Michele REYNIER Michele BARRE Christophe ROGER Ilya NARAGHI Jean Michael LEGAIT Encadrants Philippe COLLET Herv CHANG Universit Nice SOPHIA ANTIPOLIS 2005 2006 Table des mati res 1 Introduction 1 IT Objeetifsz c ue Ae ee ec QU ML Ius d qe de e th A aaa 1 1 2 Prineipes zu a SSmi Xu eie quum s 1 1 3 Architecturegengrale 2 2 Cahier des charges 5 2 1 Connectivit client serveur 5 2 1 1 Cr ation d un couple compte mot de passe 5 2 1 2 Sauvegarde des mots cl s pour le client lourd 5 2 2 Creation dynamique des communautesinstantantes 5 2 241 Amalyse des mots Cl s 2 Leve Ree orm RE ae 5 2 2 2 Affectation aux salons 5 2 2 3 Notification eat 0 beue a en an ek 6 2 3 Administration 4064 LE ng SNS et ER Gd cdd ache 6 2 3 1 Plugin ou module pour Wildfire 6 2 3 2 Console d administration 6 2 8 3 Console de test s iuum ERES A dorus 6 3 Planning du projet 7 Ghent me hah Ee 8 2 2 SePVelI 525 aa BAG era ae hae le a Ih BS le deep s 9 3 3 Documentation et pr paration la soutenance
14. acun d entre nous a r dig de la documentation et cherch un client XMPP pour Pocket PC compatible avec les salons 24 CHAPITRE 4 TRAVAIL R ALIS L gende Client l ger Classes m tiers plugn services cot H Recherche d un Client lourd lll Classes utilitaires plugin abi dient XMPP Tests unitaitres du E Console oo cot Se ene client d administration plugin i R diger dela E Console de tests plugin ae Fic 4 10 L gende Michele BARRE Christophe ROGER ot Fic 4 11 Mich le Barre et Christophe Roger ont surtout travaill sur le plugin Wildfire Mich le REYNIER Jean Michael LEGAIT SE Ne gt Fic 4 12 Michele Reynier et Jean Michael Legait ont surtout travaill sur les clients lya NARAGHI F1G 4 13 Ilya Naraghi a surtout travaill sur les Web services Chapitre 5 Contenu du livrable Remarque Le livrable n est pas fourni avec ce rapport il se situe sur une base CVS de 17135 qui a t mis notre disposition par notre encadrant Mr Collet Les sources ne peuvent tre fournies car elles vont tre utilis es dans le cadre d un contrat de recherche entre le laboratoire 138 et FRANCE TELECOM Voici l arborescence des fichiers que nous livrons 250072 y CLIENT Gy CMWSapp zy jsp D web xml y classes Gy property amp pc y pda gui properties gy resources 25 properties ciws_banniere pn
15. adapt e une JVM limit e KSOAP KSOAP tout comme Axis nous permet de construire notre requ te SOAP et de la faire parvenir au Web Service Etant donn que nous avons plusieurs impl mentations du client en ce qui concerne les appels aux Web Services il tait n cessaire de mettre au point un patron de conception Design Pattern Factory afin d abstraire les classes utilis es Pour faciliter le param trage de l application nous avons galement utilis un fichier de propri t s contenant des informations telles que l adresse du serveur le type de web service utiliser etc qui poss de les librairies standards d une JVM classique 43 INT GRATION DES WEB SERVICES 17 4 3 2 1 Client PC Nous avons impl ment deux types de client PC En effet Apache Axis nous propose deux mani res d impl menter un client Web Service Soit en fabriquant nous m me la requ te SOAP et dans ce cas pr ciser les informations n cessaires les types utilis s entier flottant les m thodes invoquer l adresse du Web Service Soit en utilisant les proxies stubs qui sont g n r s par l outil WSDL2Java qui contiennent la plupart des informations utiles Le code du client devient alors extr mement simple Notre premi re approche a t le mod le sans proxies car ce dernier est plus facile comprendre et donc plus rapide impl menter Ceci nous a permis de v rifier rapidement la validit de la chaine de fonctionnement C e
16. applications messagerie instantan e diffusion au dio ou vid o etc Chaque application est int gr e cot client et serveur par un web service ce qui facilite l int gration et le pilotage de nouveaux services dans la plate forme Le projet d veloppera une plate forme serveur sous Linux et ou Windows et des clients sous Linux Windows et Pocket Pc 1 2 Principes Prenons l exemple du forum de l emploi de Nice Un serveur de communaut instantan e a t mis disposition pour faciliter la visite Un utilisateur cherchant du travail dans le domaine de l informatique entre dans son client de communaut instantan e application java les mots cl s repr sentatifs de ses centres d int r t informatique recherche et emploi Il est automatiquement affect au salon r serv la recherche d emploi dans l informatique En utilisant ensuite un client XMPP de messagerie instantan e il est de suite mis en contact avec les autres membres du salon tant d j connect s dans notre exemple IBM SUN mais aussi des personnes la recherche d emploi dans l informatique 1 Amui signifie se grouper en tahitien 2 CHAPITRE 1 INTRODUCTION Salon Emploi Informatique SUN IBM ntr int r t informatique Serveur Wildfire Christophe Jean Michael recherche emploi e Point d acc s Wifi SUN Kk Client XMPP Client XMPP Spark Fic 1 1 Deux clients ayant les m mes centres d int r ts peuven
17. ation et pr paration la soutenance Pr visionnel 7 Serveur 10 04 2006 20 04 2006 7 3 Tests et Documentation 10 04 2006 20 04 2006 8 3 Tests et Documentation 10 04 2006 23 04 2006 11 Documentation 01 05 2006 07 05 2006 112 Aide HTML programmeur 01 05 2006 07 05 2006 12 1 Rapport 03 05 2006 09 05 2006 12 3 Soutenance 10 05 2006 10 05 2006 Effectif 10 1 Manuel d installation 16 04 2006 09 05 2006 10 3 Choix d impl mentation 03 05 2006 09 05 2006 aan 11 1 Rapport 02 05 2006 09 05 2006 sid 11 3 Soutenance 15 05 2006 15 05 2006 E Documentation E Rapport B Pr paration de la soutenance E Soutenance Fic 3 3 Palnning pr visionnel et effectif concernant la documentation et la pr paration de la soutenance 3 3 1 R daction de la documentation Nous pr voyions de r diger une aide utilisateur pour le client lourd Mais lors de son d veloppe ment nous avons trouv qu il n tait pas vraiment n cessaire Nous avons pr f r nous concentrer sur une bonne ergonomie Mais durant cette m me phase nous nous sommes rendu compte que l installation du serveur tait plut t longue et compliqu e Nous avons donc d cid de mettre profit le temps r serv la documentation utilisateur du client lourd pour r diger un manuel d installation Ceci n a donc pas eu d impact sur notre planning 3 3 2 Pr paration de la soutenance La date de la
18. ces sans avoir passer par une API Le cas chant nous d velopperons un module Le module sous Wildfire est pr vu pour communiquer avec des web services Dans tous les cas que nous utilisions un module ou un plugin celui ci devra v rifier qu un login est libre et en proposer un nouveau sinon cr er les mots de passe cr er les comptes assigner les utilisateurs aux salons 2 3 2 Console d administration Une console d administration du plugin int gr e celle de Wildfire permettra de configurer le plugin module et de surveiller son bon fonctionnement 2 3 3 Console de test Les tests JUnit ne pouvant tre effectu s car nous d veloppons un plugin Une console de test permettra toute personne voulant utiliser notre plugin de v rifier qu il fonctionne correctement Celle ci se pr sentera sous la forme d une page web avec un bouton qui permettra de lancer plusieurs s ries d op rations d administration des communaut s telles que la cr ation suppression d utilisateurs et de salons affectation plusieurs salons etc La console g n rera un fichier de logs que l administrateur devra comparer avec le notre Si les fichiers sont les m mes le plugin fonctionne correctement Chapitre 3 Planning du projet Nous avons globalement respect le planning que nous nous tions fix lors de la phase de gestion de projet Nous avons juste d d caler la remise des lots car nous les avions fix s lors de jo
19. che Axis http ws apache org axis 3 Mysaifu http www2s biglobe ne jp dat java project jvm index en html 4 KSOAP http ksoap objectweb org software downloads index html 5 GnuClasspath http www gnu org software classpath 6 7 8 J2ME http java sun com javame index jsp 9 JUnit http www junit org index htm 10 Trucs et astuces pour pocketPC Michel Buffa http miageprojet unice fr twiki bin view Fun PocketPC 11 Jabber http jabber org 12 Wildfire http www jivesoftware org 13 API JiveSoftware Wildfire http www jivesoftware org builds wildfire docs latest documentation javadoc 14 Apache Lucene http lucene apache org java docs index html 15 API Apache Lucene http lucene apache org java docs api index html GnuClasspathX http www gnu org software classpathx J2SE http java sun com javase index jsp 31 32 CHAPITRE 6 SYNTHESE Annexe A D finitions et acronymes A 1 Web Services M canisme universel pour faire dialoguer deux applications au travers du r seau Internet les services Web reposent sur des standards Les services Web proposent un m canisme de commu nication standard pour faire dialoguer deux applications bas es sur des technologies h t rog nes La communication repose le plus souvent sur l change de messages XML L architecture le plus couramment utilis e est orient e services SOA reposant sur un m canisme de type RPC Les messages so
20. ctionnant sur WinCE B2 Chents Java XMPP 4 n ee i ie a AR RII Clients XMPP sur navigateursinternet B 4 Clients XMPP fonctionnant sur une JME TABLE DES MATI RES Chapitre 1 Introduction 1 1 Objectifs Pour faire face l volution de leur m tier les entreprises doivent pouvoir int grer anciens et nouveaux syst mes d information par composition Cette int gration par composition de services est actuellement pour elles un enjeu crucial La technologie des web services a justement t con ue pour faciliter l interop rabilit des applications en permettant les invocations de services quelconques au travers du r seau Parall lement de nombreuses plates formes communautaires existent form es sur le mod le de MSN Messenger et de ses extensions Mais elles ne permettent pas de former des groupes de fa on instantan e alors qu un certain nombre d applications sont envisageables Le but de ce projet baptis Amui est de fournir une application qui g re des communaut s instantan es em pilotant d autres applications l aide de web services En utilisant un client sp cifique les utilisateurs se connectent au serveur et sont automatiquement plac s dans des groupes d int r ts en fonction des mots cl s qui les caract risent Chaque communaut instantan e ainsi form e sera configur e pour ex cuter diff rentes
21. e Client l ger 16 CHAPITRE 4 TRAVAIL R ALIS La seconde grande tape fut le d veloppement d un client lourd Application Java L utilisateur n utilise donc plus son navigateur pour acc der aux Web Services mais une application Java Le client effectue alors directement les appels aux Web Services gr ce au protocole SOAP Client lourd Fic 4 6 Architecture Client lourd Lors de cette tape nous avons constat qu il tait tr s difficile d impl menter de la m me mani re les web services en utilisant Axis sur une plate forme pc que sur un Pocket PC En effet sur les PC nous utilisons la biblioth que d Apache Axis afin d effectuer les appels aux Web Services Cependant nous avons constat qu Axis poss de des d pendances vers d autres biblioth ques qui sont suppos es se trouver dans une JVM standard PC J2SE Bien que nous ayons utilis une JVM compatible J2SE sur le PDA Mysaifu certifi e GnuClasspath nous avons constat que cela ne suffisait pas En effet Apache Axis utilise aussi certaines biblioth ques suppl mentaires GnuClasspath dites GnuClasspathX Malheureusement notre JVM Mysaifu ne poss de pas ces biblioth ques Apr s de nombreuses tentatives d int gration des biblioth ques absentes difficilement identifiables nous avons d cid d impl menter le client du Pocket PC sans utiliser Apache Axis Nous avons finalement utilis une biblioth que plus l g re et plus
22. e qu un utilisateur d sire cr er un compte avec un login d j utilis 4 4 4 Politique de gestion des communaut s instantan es 4 4 4 1 Utilisation de salons Nous avions initialement pr vu d utiliser la notion de groupe pour repr senter nos communau t s cependant apr s avoir tudi les possibilit s de Wildfire nous nous sommes rendu compte que la notion de salon tait plus appropri e En effet avec les salons le principe de conversation plusieurs ainsi que la notifications des membres d un salon lors de l arriv e et du d part d un autre membre est automatiquement g r e par le serveur Ce qui n est pas le cas avec les groupes 4 4 4 2 Restriction des propri t s Nous avons limit les modifications des propri t s des salons et des utilisateurs car les com munaut s ne se g rent pas de la m me mani re que des salons ordinaires Les communaut s Les propri t s des communaut s que nous imposons sont les suivantes Un salon ne peut tre cr e modifier et supprimer que par l administrateur des communaut s Tous les salons sont visibles nous voulions que ceux ci ne soient visibles que par leur membres cependant cette fonctionnalit n est pas encore impl ment dans Wildfire Nous avons d ailleurs particip un vote sur le site de wildfire pour que cette nouvelle fonction nalit soit impl ment e au plus vite L acc s un salon est r serv uniquement aux membres de ce salon Un ut
23. e s lectionner saisir ses mots cl s Contrairement au client l ger le client lourd sauvegarde lo calement les mots cl s et le login propos s la session pr c dente La fonction du client reste la m me son r le est de configurer le compte de l utilisateur avant chaque connexion Connexion D connexion Le client XMPP doit permettre une personne ayant obtenu un login et un mot de passe de se connecter au serveur Wildfire et d acc der aux salons de discussion auxquels elle a t assign e La d connexion se fait galement partir du client XMPP 2 1 2 Sauvegarde des mots cl s pour le client lourd Le client lourd doit sauvegarder les donn es du client mot cl s login dans un fichier 2 2 Creation dynamique des communaut s instantan es 2 2 1 Analyse des mots cl s Pour faciliter la recherche de salons le plugin analyse les mots cl s entr s par l utilisateur et propose les salons dont l orthographe des noms s y approche 2 2 2 Affectation aux salons Le plugin permet d indiquer au serveur Wildfire quels salons affecter les utilisateur en fonction des mots cl s s lectionn s 6 CHAPITRE 2 CAHIER DES CHARGES 2 2 3 Notification Lorsqu un utilisateur entre ou sort d un salon sa pr sence absence est notifi e aupr s des autres utilisateurs du salon 2 3 Administration 2 3 1 Plugin ou module pour Wildfire Nous utiliserons un plugin si celui ci est capable de communiquer directement avec les web servi
24. e utilis e En effet sur un PC les images s affichaient alors que sur un Pocket PC aucune image n apparaissait Nous avons apr s de nombreuses recherches trouv la cause et la solution au probl me Lorsque nous construisons un objet de la classe Image le t l chargement du fichier image se fait en t che de fond L objet obtenu n est donc pas imm diatement op rationnel et nous nous retrouvons manipuler non pas une image mais un proxy Nous avons donc utiliser un MediaTracker La classe Media Tracker permet de demander l affichage de l image une fois le t l chargement termin 14 CHAPITRE 4 TRAVAIL R ALIS E q 11 46 wn Password Password Server http 192 168 0 5 80 Server Nttp localhost 8080M Existing account Existing account New account Ej Login FIG 4 4 Page d accueil du client lourd sous Windows PC et Windows Mobile Pocket PC 4 2 2 2 Sauvegarde des mots cl s Nous voulions sauvegarder les mots cl s de l utilisateur dans un fichier XML format tr s r pandu et tr s pratique Nous utilisions la bibliot que DOM pour manipuler le fichier de sauve garde Mais la JVM du Pocket PC que nous utilisons ne dispose pas de cette biblioth que Nous avons donc choisi un second format un fichier de propri t properties et d cid de fournir deux modes de sauvegarde en fonction de la plate forme mat rielle utilis e Le client Amui poss de donc deux formats de sauvegarde des mots
25. eb pour quelle permette d utiliser ces nouvelles fonctionalit s Ceci n tait pas pr vu dans notre planning initial mais nous avons pu nous en occuper parallement aux autres t ches pr vues durant cette p riode Web services sur Pocket PC En ce qui concerne les web services c t client nous avions pr vu d utiliser Axis aussi bien sur une plateforme classique Windows Linux que sur PDA mais nous avons t oblig s de proc der differement en ce qui concerne le Pocket PC Apr s 3 jours de travail nous avons d cid avec l accord de nos encadrants d utiliser une autre alternative KSOAP afin de ne pas accumuler de retard cf 4 3 2 Client XMPP sur Pocket PC Lors de la phase de gestion nous avions trouv un client XMPP fonctionnant sur Pocket PC imov Mais nous nous sommes rendu compte par la suite 3 2 SERVEUR 9 qu il ne supportait pas les salons de discussion au d but nous avions pr vu d utiliser des groupes de discussion et non des salons de discussion cf 4 4 4 1 Nous avons donc commenc chercher un nouveau client XMPP pour PDA supportant les salons mais malheureusement nous n en avons trouv aucun voir Annexe B Cette t che a d se faire parall lement aux autres t ches pr vues Mais cela n a pas entrain de retard dans le planning 3 2 Serveur Pr visionnel 7 Serveur 10 04 2006 20 04 2006 T 1 1 Plugin 10 04 2006 16 04 2006 7 2 Ameliorations
26. ent lourd pour Pocket PC runJarPDA Cr er puis execute le client lourd pour PDA jarPDA allJars Cr er un client lourd pour PC et un autre pour Pocket PC all Cr er tout les clients Le r pertoire src contient toutes les sources des classes du client Voici les diff rents package fr unice amui client fr unice amui test fr unice amui web fr unice amui ws Le r pertoire CIWSapp contient les fichiers JSP ainsi qu un fichier de description de deploie ment web xml du client l ger Le r pertoire property contient les fichiers de propri t s qui permettent de d crire quel web service utiliser en fonction de la plate forme mat rielle utilis e Il poss de galement un fichier permettant de modifier la langue utilis dans l interface graphique Le r pertoire resources contient les fichiers dans lesquels seront sauv s les mots cl s de l uti lisateur Il contient galement les diff rentes images de l interface graphique 5 2 R pertoire Web Services Cible Description clean Supprime le r pertoire classes veryclean Supprime le repertoire classes compile Compile toutes les sources du Web services deploy WS2WF Deploie le Web Service Ws2Wf au pr s d Axis undeploy WS2WF Supprime le Web Service Ws2Wf au pr s d Axis 5 3 LE R PERTOIRE PLUGIN 27 5 3 Le r pertoire plugin Le r pertoire ciws contient l arborescence n cessaire l i
27. es de messagerie instantan e propri taires qu avec la plateforme serveur ouverte Jabber A 14 Mysaifu Mysaifu est machine virtuelle java JVM pr vue pour tourner sous Windows Mobile 2003 pour Pocket pc C est un logiciel gratuit publi sous la licence GPLv2 GNU Public License version 2 A 15 Apache Tomcat Le serveur Apache Tomcat est un serveur Open Source qui agit comme un conteneur de servlet J2EE Il fait partie du projet Jakarta au sein de la fondation Apache Tomcat impl mente les sp cifications des servlets et des JSP de Sun Microsystems Comme Tomcat inclut un serveur HTTP interne il est aussi consid r comme un serveur HTTP 36 ANNEXE A D FINITIONS ET ACRONYMES Annexe B Clients XMPP test s Voici le r capitulatif des clients XMPP test et le probl me correspondant B 1 Clients XMPP fonctionnant sur WinCE Client Probl me imov Ne supporte pas les salons de discussions EntreatCE Permet d envoyer des messages mais pas d en recevoir B 2 Clients Java XMPP Nous avons test Jeti qui provoquait une erreur indiquant que le Pocket PC ne dispoqait pas d assez de m moire B 3 Clients XMPP sur navigateurs internet Nous avons test JWChat avec les navigateurs suivants Navigateur Probl me Internet Explorer Webby Opera Minimo Ne permet pas de cliquer sur le bouton login Permet d envoyer des messages mais pas d en recevoir B 4 Client
28. escription Lancement Res communaut s existantes 1 Test de cr ation de 20 nouveaux utilisateurs Cr e 20 utilisateurs sur le serveur Lancer Cr ati d A nn 2 Test de cr ation de 10 utilisateurs d j existants Refuse les 10 cr ations d utilisateurs Lancer 3 Test de suppression de 20 utilisateurs existants Supprime les 20 utilisateurs pr c demment cr s Lancer Membres 4 R alise l ensemble des tests concernant la manipulation des membres de communaut s instantan es Lancer o Fic 4 9 Console de test des communaut s instantan es 4 4 2 2 Classes de test Les classes de tests doivent impl menter une interface commune fr unice amui plugin tests Test Cette interface d finit ce que doit faire un test travers les m thodes suivantes init initialise l environnement pour pouvoir ex cuter le test run int i permet d effectuer le i me sous test run lance le test dans sa globalit ex cutant les sous tests les uns apr s les autres close permet de remettre l environnement dans l tat qu il avait avant l ex cution des tests L utilisation de cette interface permet d abstraire l utilisation des tests Nous pouvons d sormais utiliser une fabrique et ainsi favoriser la r utilisation du code Gr ce cette architecture la page jsp utilis e pour la console de tests reste valable pour les prochaines impl mentations de l interface Test Seule la fabrique n cessite alors
29. g ciws_front png logo_small png src 2 build xml amp Doc zy images 2g Installation javadoc 25 manual E overview html lib y PLUGIN gy ciws 3 ciws jar WEB SERVICES zy classes gy src wsdd 59 build xml L deploy WSZWF wsdd overview html L undeploy WSZWF 3 build xml _ 25 26 CHAPITRE 5 CONTENU DU LIVRABLE Le r pertoire se d coupe en cinq sous r pertoires qui seront d crits dans les sections suivantes 5 1 R pertoire client Dans ce r pertoire vous trouverez un script Ant build xml Ce fichier permet de lancer diff rentes cibles dont voici le r capitulatif Cible Description clean Supprime le r pertoire classes veryclean Supprime le repertoire classes et les clients g n r s compile Compile toutes les sources du client compileWSP Compile les stubs g n r s par WSDL2Java WSDL2Java G n re les stubs gr ce au fichier WSDL su serveur client Test Lance les tests unitaires du client d Cr er un r pertoire clientweb contenant une application web Il s agit du client l ger jarPC Cr er un r pertoire clientpc contenant un jar un r pertoire lib et un r pertoire save Il s agit du client lourd pour PC runJarPC Cr er puis execute le client lourd pour PC Cr er un r pertoire clientpda contenant un jar un r pertoire lib et un r pertoire save Il s agit du cli
30. ges qui peuvent tre transmis vers et depuis un service web donn Le WSDL d crit quatre ensembles de donn es importants information d interface d crivant toutes les fonctions disponibles publiquement information de type de donn e pour toutes les requ tes de message et requ tes de r ponse information de liaison sur le protocole de transport utilis information d adresse pour localiser le service sp cifi WSDL est donc concu pour tre la pierre d angle de l difice Web Services avec un langage commun pour d crire les services et une plateforme pour int grer automatiquement ces services 33 34 ANNEXE A D FINITIONS ET ACRONYMES A A AXIS AXIS est l acronyme de Apache eXtensible Interaction System Apache Axis est une nouvelle impl mentation de la sp cification SOAP Simple Object Access Protocol d velopp par la fondation Apache The Apache Software Foundation qui succ de Apache SOAP Axis se veut elle plus performante plus modulaire et plus extensible que son pr d cesseur Axis est la fois un environnement d h bergement de services Web et un toolkit complet de d veloppement pour la cr ation de services et l acc s des services tiers 5 WSDD Fichier XML pour d ployer un service Web manuellement et sans poss der forcement les sources A 6 Wildfire JiveSoftware Wildfire est un serveur de messagerie instantan e d entreprise d velopp sous licence Open Source GPL et sous licence
31. i doit permettre de communiquer via web services avec un plugin Wildfire Le d ploiement d Axis et Wildfire en deux applications web semblait tre la facon la plus naturelle Mais cela posa un probl me de communication entre ces deux applications car justement nous voulions utiliser Wildfire par web services Nous avons finalement choisi une autre approche Int grer Axis dans Wildfire Ceci permet l impl mentation des web services de communiquer avec le serveur Wildfire et le plugin Voici le sch ma des deux mod les voqu s pr c demment Plugin Wildfire Fic 4 2 Changement de mod le 4 2 Client Nous voulions pouvoir faire communiquer le plus t t possible le client et le serveur via web services C est pourquoi nous avons d cid de commencer par d velopper un client l ger interface web avant de r aliser un client lourd application java Ceci tait plus facile car les web services taient enti rement sur le serveur et nous n avions donc pas de probl me avec le cas particulier du PDA C est pourquoi l application Amui offre deux clients Une application web client l ger Une application Java client lourd Ces deux clients ont t impl ment s par Mich le Reynier et Jean Michael Legait 4 2 1 Client l ger Fonctionnalit s de base du 10 17 Avril Am liorations du 24 Avril au 3 Mai Le client l ger est une application web Elle s appuie sur une Servlet et deux JSP Ce clie
32. ilisateur membre d un salon ne peut inviter un autre utilisateur dans le salon Une communaut e instantan e n a aucune restriction au niveau du nombre de ses membres Affectation des utilisateurs Les propri t s des utilisateurs que nous imposons sont les sui vantes Un utilisateur ne peut ni modifier son login ni son nom Le nom de l utilisateur est impos il est compos d un pr fixe d termin par l adminis trateur et de son login Le pr fixe permet de diff rencier un utilisateur de communaut s instantan es des autres utilisateurs 4 4 5 Internationalisation de la console Pour faciliter l volution du plugin nous l avons d velopp en utilisant les possibilit s d in ternationalisation offerte par Java Ainsi l ensemble des pages de la console d administration du plugin reste facilement portable vers d autres langues 4 5 R PARTITION DES T CHES 23 4 4 6 Probl mes rencontr s 4 4 6 1 Changement fr quents de version du serveur Wildfire JiveSoftware d veloppe r guli rement de nouvelles versions de Wildfire nous devions donc v ri fier la compatibilit descendante de notre plugin m me si au d part il tait pr vu de le d velopper que pour la version 2 5 version 2 6 2 actuellement disponible 4 4 6 2 Console d administration Nous n avons pas rencontr de probl mes majeurs au cours du d veloppement de la console d administration Cette phase a surtout t longue et fastidieuse cau
33. mpl mentation d un plugin Ce r pertoire peut tre d pos tel quel dans src plugin des sources de WildFire Le plugin pourra alors tre compil en faisant la commande ant plugins en utilisant le build xml fourni avec les sources de wildfire ciws jar est le plugin compil et utilisable qu il suffit de d ployer sur le serveur Wildfire 5 4 Le r pertoire doc Ce r pertoire contient la Javadoc du projet ainsi que le manuel de conception et le manuel d installation 5 5 Le r pertoire lib Ce r pertoire contient toutes les bibliot ques n cessaires au projet 28 CHAPITRE 5 CONTENU DU LIVRABLE Chapitre 6 oynth se 6 1 Bilan technique 6 1 1 Bilan fonctionnel Le tableau suivant r capitule les fonctionnalit s que nous avions pr vu d impl menter lors de la phase de gestion de projet et indique si elles ont t r alis s ou non Il montre aussi celles qui n taient pas pr vues l origine et qui ont t rajout es par la suite priorit objectif r alis 1 Connexion l aide d un login et d un mot de passe Affectation aux salons String equals Notification lors de l arriv e et du d part d un autre membre Console d administration correspondante sur le plugin Wildfire V rification des logins redondants Gestion des d connexions Console d administration correspondante sur le plugin Wildfire Console de tests du plugin Wildfire Client lourd Fonctionnalit s de
34. nt peut tr s bien tre d ploy sur un serveur diff rent de celui qui h berge le serveur de messagerie Wildfire Voir sch ma 4 1 partie de gauche 4 2 CLIENT 13 Voici les fonctionalit s de base impl ment s par ce client l ger Saisir son login et son mot de passe Indiquer si l on a d j un compte ou si l on est un nouvel utilisateur Choisir des salons parmis ceux qui sont propos s JSP Servlet Voici le fonctionnement utilis dans le client l ger Index jsp Infos jsp Fic 4 3 Interaction JSP Servlet 1 Envoi des donn es saisies 2 En cas de login d j pris ou de mot de passe incorrect l utilisateur est invit recom mencer 3 Envoi des donn es pour le r capitulatif 4 2 2 Client lourd Fonctionnalit s de base du 19 au 24 Avril Am liorations du 25 Avril au 3 Mai 4 2 2 1 Interface graphique Le client lourd est une application avec une interface graphique AWT Nous utilisons AWT et non SWING car cette biblioth que est beaucoup moins gourmande en ressource Et ne perdons pas de vu que ce client lourd doit fonctionner aussi bien sur ordinateur de bureau que sur Pocket PC De plus AWT plus ancien que SWING est mieux reconnu par les diff rentes plateforme Probl me d affichage sur Pocket PC Nous avons voulu ins rer des images dans l interface graphique du client Mais nous n obtenions pas le m me r sultat en fonction de la plate forme mat riell
35. nt v hicul s via SOAP ou XML RPC La plupart des standards et technologies les plus anciennes ont t con us pour une architecture reposant sur SOAP Extr mement nombreux les standards des services Web sont organis s en couches qui n voluent pas la m me vitesse Seules les fondations SOAP et WSDL sont aujourd hui matures et stables A 2 Protocole SOAP SOAP Simple Object Access Protocol d finit un protocole permettant des appels de proc dures distances RPC s appuyant principalement sur le protocole HTTP et sur XML mais aussi SMTP et POP Il permet ainsi de d finir des services Web Les paquets de donn es circulent sous forme de texte structur au format XML A 3 WSDL Le WSDL est le langage de description de web services permettant aux applications les utilisant d auto configurer les changes entre eux Le WSDL Web Services Description Language est comme son nom l indique un langage de description de Web Services au format XML Il permet de s parer la description des fonc tionnalit s abstraites offertes par un service des d tails concrets d une description de service tels que comment et o cette fonctionnalit est propos e C est donc un langage d crivant les fonctionnalit s abstraites d un service ainsi que l architecture d crivant les d tails concrets de la description de service En clair il d finit de mani re abstraite et ind pendante du langage l ensemble des op rations et des messa
36. s XMPP fonctionnant sur une J2ME Client Probl me Bombus Colibri JabberMixClient KomKom mober Papla Mobile Nous n avons pas eu le temps d installer une J2ME sur le Pocket PC 37
37. se du manque de docu mentation ce sujet Le seul probl me que nous ayons eu concerne l internationalisation de la console En effet nous avions tout d abord utilis les fichiers de traduction de wildfire Cependant lorsque que nous avons test notre plugin avec la version 2 6 2 la console ne fonctionnait plus car ceux ci avaient chang Nous avons donc du cr er notre propre fichier de traduction afin que l internationalisation fonctionne quelque soit la version de Wildfire 4 5 R partition des t ches Nous avons r parti les t ches de notre projet en 4 unit s de travail les clients et les tests associ s le plugin Wildfire avec sa console d administration et sa console de tests les Web Services la documentation et la recherche d un client XMPP pour Pocket PC supportant les salons de discussion Les diagrammes de secteurs qui suivent repr sentent comment le groupe s est r parti les diffe rentes t ches num r es ci dessus Nous pouvons remarquer que Mich le Reynier et Jean Michael Legait se sont focalis s sur les clients cf diagramme 4 12 Michele Barre et Christophe Roger se sont principalement occup du plugin Wildfire de sa console d administration et de sa console de tests cf diagramme 4 11 Ilya Naraghi a surtout travaill sur les web services Toute l quipe a du se documenter mais Ilya y a pass plus de temps car les web services taient une nouvelle techonolgie pour nous tous 4 13 Et ch
38. st ensuite que nous avons impl ment le mod le avec proxies qui rend le code du client plus court et plus simple 4 3 2 2 Client PDA En ce qui concerne le Pocket PC nous avons utilis KSOAP qui se rapproche du premier type de client PC car il nous est n cessaire de fabriquer nous m me la r quete SOAP Cependant KSOAP plus adapt une JVM limit e nous assure un meilleur fonctionnement 4 3 3 Gestion des exceptions Une autre difficult rencontr e avec les Web Services a t la gestion des exceptions Java notamment lors de leur passage travers le r seau En effet une exception envoy e par un Web Service est transform e en une exception particuli re SOAP FAULT CODE dans laquelle est encapsul e l exception initiale Or notre impl mentation du client nous impose d utiliser cette exception Nous avons donc d cid qu une exception serait traduite en un code de retour qui passera travers le r seau et sera de nouveau traduit en exception du c t du client Client Web Service Plugin Invocation d une methode SOAP D legation JAVA Throws Exception u catch Exception Selon l Exception renvoie un entier SOAP Throws Exception Java Fic 4 7 Gestion des Exceptions 18 CHAPITRE 4 TRAVAIL R ALISE 4 3 4 Tests unitaires Nous avons test le bon fonctionnement de nos impl mentations de client Web Services l aide de JUnit 4 0 des tests uni
39. t tre mis en relation gr ce au client de communaut s instantan es 1 3 Architecture g n rale Vous pouvez observer sur le sch ma qui suit sch ma 1 2 l architecture g n rale de la version finale de notre projet avec client lourd Nous reprenons des technologies d j existantes comme Wildfire Axis et Tomcat repr sent es en bleu et nous y ajoutons des fonctionnalit s repr sent es en jaune 13 ARCHITECTURE G N RALE Code Impl ment C Technologies existantes CLIENT SERVEUR Fic 1 2 Architecture de notre application CHAPITRE 1 INTRODUCTION Chapitre 2 Cahier des charges 2 1 Connectivit client serveur 2 1 1 Cr ation d un couple compte mot de passe Client l ger L utilisateur doit utiliser son navigateur pour charger la page web qui lui permet de choisir ses mots cl s dans la premi re version du client il s agira d une liste de mots s lectionner dans la seconde l utilisateur devra effectuer une recherche des salons par mots cl de proposer un login afin de cr er un compte et de se connecter au serveur Wildfire par l interm diaire de son client XMPP Si le login est d j assign une personne l application plugin lui en proposera un autre Une fois le login accept l application donne un mot de passe qui ne sera valide que le temps de la connexion Client lourd L utilisateur doit installer sur sa machine une application java qui lui permettra d
40. taires Nous avons choisi la version 4 0 de JUnit car elle est la seule pouvoir g rer les exceptions v rifier que la bonne exception a t lanc e par exemple Les principaux tests unitaires effectu s permettent de v rifier l ajout d un nouvel utilisateur pseudonyme mot de passe liste des mots cl s au serveur en supposant que le pseudonyme n est pas d j utilis la connexion d un utilisateur existant au serveur en supposant qu il existe d j l ajout d un nouvel utilisateur pseudonyme mot de passe liste de mots cl s au serveur en supposant que le pseudonyme est d j utilis la connexion d un utilisateur existant au serveur avec un mot de passe erron en supposant qu il existe deja 44 PLUGIN SERVEUR 19 4 4 Plugin serveur Le plugin a t impl ment par Mich le BARRE et Christophe ROGER 4 4 1 Administration 4 4 1 1 Console web Son r le est de proposer toutes les fonctionnalit s de base pour g rer les communaut s ins tantan es en tendant le m canisme d administration web propos par wildfire La console web permet La visualisation des utilisateurs et communaut s La cr ation la modification et la cr ation des communaut s et des utilisateurs L assignation des utilisateurs aux communaut s La modification des propri t s du serveur de communaut s qui sont contenues dans un fichier de propri t s wildfire Console d Administration Liste des utilisa
41. teurs Mozilla Firefox Fichier Edition Affichage Marque pages Outils 2 e x it http 192 168 0 4 8080 wildfire 2 6 2 plugins ciws ciws user index jsp username firrst member Wildfire Admin Console 2 Serveur Utilisateurs Groupes Sessions Salon de discussion Deconnexion admin Configuration Liste des utilisateurs Proprietes du plugin Ci dessous vous trouverez la liste des utilisateurs des communaut s instantan es Communaut s Nombre total d Utilisateurs 2 Tri s par Utilisateur Utilisateurs par page 15 v Instantan es Visualisation des Enligne Pseudo Nom Cr er Modifier Supprimer communaut s existantes 1 first member ciws_first member 8 mai 2006 r4 o Cr ation de communaut s instantan es Liste des communautes Membres s communaut s a partient l utilisateur first member Vo ouvez supprimer l utilisateur d un salon en cliquant Fic 4 8 Console de visualisation des utilisateurs 20 CHAPITRE 4 TRAVAIL R ALISE 4 4 1 2 Classes m tiers 1 Interface Plugin Notre classe AmuiPlugin doit obligatoirement impl menter cette interface afin d tre vue en tant que plugin par wildfire Elle doit impl menter deux m thodes initializePlugin et destroyPlugin qui vont d finir les actions accomplir au chargement et la suppression du plugin 2 Interface Instant Communities Cette interface met disposition 3 m
42. urs feri s Nous avons donc accumul une journ e de retard par semaine Cependant nous avions pr vu la semaine du 24 au 30 avril pour pallier d ventuels probl mes de planning Cela n a donc pas eu d incidence sur l ensemble du projet 8 CHAPITRE 3 PLANNING DU PROJET 3 1 Client Pr visionnel 8 1 Page Web Client l ger 10 04 2006 16 04 2006 8 2 1 Cliend lourd 17 04 2006 23 04 2006 8 3 Tests et Documentations 10 04 2006 23 04 2006 9 1 1er Lot 17 04 2006 17 04 2006 2 melot 10 Prise en compte des retours 24 04 2006 30 04 2006 Effectif 8 Client 10 04 2006 03 05 2006 8 1 1 Interface Web 10 04 2006 17 04 2006 8 2 Am liorations 19 04 2006 03 05 2006 8 2 2 Am liorations du client l ger 24 04 2006 03 05 2006 8 2 4 Tests unitaires 26 04 2006 03 05 2006 9 1 1er lot 18 04 2006 18 04 2006 2 me lot 9 3 3emelot 09 05 2006 09 05 2006 B Base du client Interface web M Am liorations du client Client lourd E Prise en compte des retours am liorations H Remises des lots Fic 3 1 Planning pr visionnel et effectif concernant la partie client Interface web l issue de la remise du ler lot nous avons rajout une fonctionnalit au plugin la possiblit de choisir son mot de passe avant cela il tait g n r automatiquement Pour ce faire l impl mentation du plugin a t modifi Nous avons donc du du 24 avril au 3 mai revoir l interface w

Download Pdf Manuals

image

Related Search

Related Contents

condair 505 - Qviller AS  Detailed Specification - Don Whitley Scientific Limited  Belkin Play WLAN USB adapter  番 NPW532  Samsung HL-R6162W Projection Television User Manual  Lindy 20968 storage enclosure  2711P-IN004J-EN-P - Rockwell Automation  Quadro di Media Tensione 8DH10  自転車取扱説明・一括ダウンロード  Cartographie missions DDPP  

Copyright © All rights reserved.
Failed to retrieve file