MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Stripes › Framework MVC › Utilisation des ActionBean › Gestion avancée des erreurs (conversion, validation) JAXB › Framework Persistance en XML › Round-tripping des données(JAVA <-> XML) › Utilisation intégrée à Eclipse via un plug-in MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Installation des 2 frameworks › Commune Rédaction du guide d’installation › Commune Développement de l’application › MOHEISSEN Fabien Gestion des contacts (CRUDE) › STROBANT Adrien Gestion des utilisateurs (CRUDE) › CHANTÔME Adrien Connexion, recherche Contacts et Utilisateurs Création du Powerpoint › Commune MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Installation du framework Stripes Télécharger le zip des fichiers .jar à l’aide du lien ci-dessous (‘stripes-1.5.1.zip’) : http://www.stripesframework.org/display/stripes/Download Créer un projet ‘Dynamic Web Project’ sous Eclipse (‘Apache Tomcat v6.0’, ‘Dynamic Web Module 2.5’) Dans /WEB-INF/, créer le dossier /classes/ à coté du dossier /lib/ Copier les 3 .jar suivants, provenant du zip des fichiers Stripes (/lib/), dans /WEB-INF/lib : « stripes.jar », « commons-logging.jar », « cos.jar » Copier le fichier « StripesResources.properties », provenant du zip des fichiers Stripes (/lib/), dans /WEB-INF/classes/ Ajout du code xml présent sur la page suivante (Configuring Stripes) dans le web.xml, sans oublier de mettre dans ‘<init-param><param-value> …‘ le nom du package racine qui contiendra les ActionBean : http://www.stripesframework.org/display/stripes/Quick+Start+Guide Vous êtes maintenant prêt à créer des pages .jsp et des classes implémentant l’interface ActionBean. MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Application concrète d’un MVC: › Stripes gère les contrôleurs › Implémentation des vues (.jsp) › Implémentation des modèles (ActionBean) MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Le contrôleur : › Une seule Servlet › Des formulaires spécifiques › Des normes de développements MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien La vue › JSP 2.0 minimum EL JSTL … › Des balises spécifiques <stripes:form beanclass=« … »…> </stripes:form> <stripes:text name=« … »…></stripes:text> <stripes:error /> … MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Le modèle › ActionBean › Système par annotation: @ValidationMethod(on=« … ») @DefaultHandler @Validate(required=true) › 1 champ (JSP) = 1 attribut (ActionBean) › Traitements sur les attributs › Redirection propre à chaque fonction MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Installation du plugin ‘XJC Eclipse plugin’ Télécharger le plugin à l’aide du lien ci dessous https://jaxb-workshop.dev.java.net/plugins/eclipse/xjcplugin.html Placer dans le dossier /plugins/ d’Eclipse Faire la commande ‘eclipse.exe - clean’ pour prendre en compte les nouveaux plugins Créer un schéma fichier.xsd décrivant les données Puis clic bouton-droit sur le fichier Normalement une nouvelle option est apparue : JAXB 2.0. L’installation du plugin a été faite correctement MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Lien JAVA – XML › Générer du code java depuis un schéma XML › Générer un fichier XML depuis des objets JAVA › Générer des objets JAVA depuis un fichier XML MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Générer du code JAVA depuis une XSD › Créer un schéma XML (.xsd) pour la forme des XML › Dans Eclipse : Clique droit sur la xsd JAXB 2.0 -> run XJC Choisissez l’emplacement pour les classes générées (ex: /src/) › Les classes métiers sont générées MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Générer un fichier XML depuis des objets JAVA › Créer un contexte en indiquant le package source JAXBContext jaxbContext=JAXBContext.newInstance("contact"); › Créer un « marshaller » dessus Marshaller marshaller=jaxbContext.createMarshaller(); › Définir l’élément root du XML root = new QName("application"),Application.class, application) › Générer le XML marshaller.marshal(root, new FileOutputStream(emplacement)); › Le fichier XML est généré à l’emplacement indiqué MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien Générer des objets JAVA depuis un XML › Créer un contexte en indiquant le package source JAXBContext jaxbContext=JAXBContext.newInstance("contact"); › Créer un « unmarshaller » sur le contexte Unmarshaller unmarshaller=jaxbContext.createUnmarshaller(); › Créé l’objet depuis l’élément racine (root) Application appli = (Application)unmarshaller.unmarshal(location); MOHEISSEN Fabien - STROBANT Adrien - CHANTÔME Adrien