La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Tapestry (MVC) et JAXB (Persistance en XML) Christopher BIGOZZI, Raouda MCHAREK, Samir SADROUDINE.

Présentations similaires


Présentation au sujet: "Tapestry (MVC) et JAXB (Persistance en XML) Christopher BIGOZZI, Raouda MCHAREK, Samir SADROUDINE."— Transcription de la présentation:

1 Tapestry (MVC) et JAXB (Persistance en XML) Christopher BIGOZZI, Raouda MCHAREK, Samir SADROUDINE

2 Sommaire I. Pré-requis II. Tapestry III. JAXB IV. Cas détude

3 Pré-requis Connaissance de Java Connaissance des fondements du web (HTML,HTTP) Connaissance des technologies de J2EE (Servlet et balises personnalisées) Connaissance des architectures des serveurs web

4 Tapestry 1) Quest-ce que Tapestry ? 2) Fonctionnalités de Tapestry 3) Avantages et inconvénients de Tapestry 4) Installation de Tapestry 5) Application de Tapestry

5 Quest-ce que Tapestry? utilisation XML pour implémenter des applications Web en suivant le motif de conception MVC projet intégré par la fondation Apache comme sous- projet Jakarta..

6 Avantages et inconvénients Avantages : Rapidité de développement, configuration minimale et URLs claires Prise en charge de nombreuses problématiques permettant au développeur de se concentrer sur la partie métier Séparation complète de la présentation HTML du code Java Souplesse dutilisation (développement de ses propres composants) Facilité dintégration avec Hibernate et Spring. Inconvénients : Absence de mapping relationnel spécifique : il faut utiliser JDBC ou Hibernate Masquage de nombreux mécanismes web Manque de maturité (composants incomplets, communauté limitée, documentation et tutoriaux insuffisants). Pas de rétro-compatibilité avec la version 4.

7 Installation de Tapestry Tapestry nest pas un simple plugin de Eclipse, mais une librairie quil faut configurer Il suffit de mettre les.jar dans le dossier : WEB-INF/lib

8 Application de Tapestry 2 types de fichiers qui sont liés: Logique (.java) : code métier de la page Graphique (.tml ou.html) : vue de la page Accueil.java Accueil.tml

9 Fonctionnement accueil.tml accueil. component="loginForm") void onFormSubmit() { System.out.println("Handling form submission!"); }

10 t:validate=required Spécification dans le fichier app.Property

11 JAXB (Java Architecture for XML Binding) 1) Quest-ce que JAXB ? 2) Installation de JAXB 3) Fonctionnement de JAXB 4) Avantages et inconvénients de JAXB 5) Application de JAXB

12 Quest-ce que JAXB ? librairie Java implémentée par SUN pour générer du Code Java depuis un fichier XML et inversement Site de référence: https://jaxb.dev.java.net/ API Java permettant de créer des classes Java à partir de Schémas (.XSD) et inversement

13 Fonctionnalités de JAXB Data Binding : automatiser la transformation d'un modèle de données en un modèle de données objets dans un langage de programmation 3 étapes: Génération de classes Rassemblement des données Redistribution des données Objectif final : mise en correspondance automatique entre une famille de documents XML et un schéma de classes Java.

14 Installation de JAXB Installation du plugin XJC de Eclipse Télécharger le plugin à cette adresse : https://jaxb-workshop.dev.java.net/plugins/eclipse/xjc-plugin.html https://jaxb-workshop.dev.java.net/plugins/eclipse/xjc-plugin.html Le placer dans le dossier /plugins/ de 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. Linstallation du plugin a été faite correctement

15 Fonctionnement général

16 1 ière étape : création de classes Création dun.xsd Lancer JAXB en utilisant eclipse Création de n fichiers : Des.java Une fabrique, permet dinstancier les objets

17 2 ième étape : Marshalling Génération dun fichier XML depuis des objets JAVA Création dun contexte et indication du package source JAXBContext jaxbContext=JAXBContext.newIn stance(Projet.class); Création dun « marshaller » Marshaller marshaller=jaxbContext.createM arshaller(); Génération du XML marshaller.marshal(projet, new FileOutputStream(emplacement) ); Le XML est crée

18 3 ième étape : Unmarshalling Génération des objets JAVA depuis un XML Création dun contexte et indication du package source JAXBContext jaxbContext=JAXBContext.new Instance(« Contacts_JAXB »); Créer un « unmarshaller » sur le contexte Unmarshaller unmarshaller=jaxbContext.crea teUnmarshaller(); Création de lobjet Projet projet = (Projet)unmarshaller.unmarshal( emplacement);

19 Avantages et inconvénients de JAXB Avantages : Lire et écrire dans une vaste gamme de type d'entrée/sortie (Fichier, Flux, Noeud Dom...etc...) Facilité d'utilisation Inconvénients : Utilisation d'annotations, ce qui oblige a altérer les classes d'origines Reformatage des classes pour avoir soit des méthodes get/set annotées ou des variables annotées

20 Comparaison avec dautres Frameworks Même utilisation que JAXP (SAX et DOM), mais niveau dabstraction plus élevé, plus rapide Nécessité dinstaller des grosses librairies à linverse de Frameworks comme Castor

21 CONCLUSION Documentation difficile à trouver On a pu travaillé notre anglais ;) Prise en main difficile malgré la simplicité apparente dutilisation


Télécharger ppt "Tapestry (MVC) et JAXB (Persistance en XML) Christopher BIGOZZI, Raouda MCHAREK, Samir SADROUDINE."

Présentations similaires


Annonces Google