compte rendu additionnel - Page Perso de Vincent Gardeux

Maverick & CookXML
BELKHADRA Sofiane
BERNABE Thomas
RESSE Romain
Présentation
Etant donné que nous avons déjà fait une présentation succincte des deux frameworks utilisés, nous
n’allons pas nous étendre de nouveau sur le sujet ; nous parlerons surtout de l’utilisation de ces
frameworks et des problèmes que nous avons rencontrés. Ce rapport est un complément à la
présentation que nous avons faite vendredi 15 mai.
Maverick
Comme nous l’avions dit lors de la présentation, maverick était apparemment un framework simple
d’utilisation, étant donné qu’il suffisait d’ajouter le maverick.jar aux librairies web et qu’il fallait juste
configurer un maverick.xml afin que ce framework fonctionne.
Nous nous sommes basés sur l’exemple qui était disponible sur le site de maverick, à savoir le
friendbook-jsp, permettant de gérer une sorte d’annuaire, ou plutôt un réseau social.
Malheureusement, ceci n’a pas fonctionné pour nous, car nous avons eu un problème directement
au niveau de la servlet fournie dans le maverick : la servlet Dispatcher est indisponible.
Cette erreur est revenue sur plusieurs autres groupes.
Cependant, chez certains autres, maverick est fonctionnel. A savoir que ces groupes nous ont
gracieusement aidé notamment en nous donnant un fichier war de test maverick (test de liens avec
maverick, ce programme devait afficher un lien, qui lorsqu’il était sélectionné, renvoyait vers un .m
qui permettait d’obtenir la nouvelle page jsp…), mais cela n’a pas fonctionné et nous avons encore
une fois rencontré la même erreur…
De plus, il n’existe que très peu de documentation liée à maverick sur le net, vu que ce framework
n’est pas si utilisé que ça. Effectivement, nous avons activement recherché les erreurs possibles du
servlet Dispatcher mais il n’y a aucunes réponses viables à ce problème sur internet…
Suite à cela, nous avons donc décidé de coder nous même nos propres servlets et jsp afin de faire
fonctionner le deuxième framework que nous avons choisit : cookXML
Voici le code du maverick.xml :
<?xml version="1.0"?>
<maverick version="2.0" default-view-type="document" default-transform-type="document">
<views>
<view id="loginRequired" path="loginRequired.jsp">
<transform path="trimOutside.jsp"/>
</view>
</views>
<commands>
<command name="welcome">
<view path="welcome.jsp">
<transform path="trimOutside.jsp"/>
</view>
</command>
<command name="loginSubmit">
<controller class="controlleurs.LoginSubmit" />
<view name="success" type="redirect"/>
<view name="error" path="loginFailed.jsp">
<transform path="trimOutside.jsp"/>
</view>
</command>
<command name="signup">
<view path="signup.jsp">
<transform path="trimOutside.jsp"/>
</view>
</command>
<command name="signupSubmit">
<controller class="controlleurs.SignupSubmit"/>
<view name="success" type="redirect" path="edit.m"/>
<view name="error" path="signup.jsp">
<transform path="trimOutside.jsp"/>
</view>
</command>
<command name="edit">
<controller class="controlleurs.Edit"/>
<view ref="loginRequired"/>
<view name="success" path="edit.jsp">
<transform path="trimInside.jsp"/>
</view>
</command>
<command name="editSubmit">
<controller class="controlleurs.EditSubmit"/>
<view ref="loginRequired"/>
<view name="success" type="redirect" path="friends.m"/>
</command>
<command name="addFriend">
<controller class="controlleurs.EditFriend"/>
<view ref="loginRequired"/>
<view name="success" type="redirect" path="friends.m"/>
</command>
<command name="changePassword">
<controller class="controlleurs.ChangePassword"/>
<view ref="loginRequired"/>
<view name="success" path="changePassword.jsp">
<transform path="trimInside.jsp"/>
</view>
</command>
<command name="changePasswordSubmit">
<controller class="controlleurs.ChangePasswordSubmit"/>
<view ref="loginRequired"/>
<view name="success" type="redirect" path="friends.m"/>
<view name="error" path="changePassword.jsp">
<transform path="trimInside.jsp"/>
</view>
</command>
<command name="logout">
<controller class="controlleurs.Logout"/>
<view ref="loginRequired"/>
<view name="success" type="redirect" path="welcome.m"/>
</command>
<command name="friends">
<controller class="controlleurs.Friends"/>
<view ref="loginRequired"/>
<view name="success" path="friends.jsp">
<transform path="trimInside.jsp"/>
</view>
</command>
</commands>
</maverick>
CookXML
CookXML est un framework qui permet de créer des instances de classes java (objets) à partir de xml
suivant ses tags. Cependant CookXML ne fonctionne que dans un seul sens, à savoir créer du java
objet à partir du xml mais pas l’inverse, nous ne pouvions donc pas ajouter les fonctionnalités
d’ajout, de suppression et de modification d’un contact.
Voici l’arborescence du projet :
Nous avons donc importé le package cookxml.jar et nous avons créé un Creator, indispensable à son
fonctionnement. La mise en place de cookxml est très simple lorsque l’on a compris comment
fonctionnaient les creators, adders, setters et converters.
Voici le code de la classe Converter :
package cookXML;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import modele.Adresse;
import modele.Annuaire;
import modele.Contact;
import modele.Email;
import modele.Telephone;
import modele.User;
import modele.Utilisateur;
import cookxml.core.CookXml;
import cookxml.core.adder.DefaultAdder;
import cookxml.core.creator.DefaultCreator;
import cookxml.core.setter.DefaultSetter;
import cookxml.core.taglibrary.SingleNSTagLibrary;
1 / 8 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 !