1 / 54

Une base de données XML sur le net

Une base de données XML sur le net. Responsable : Jean-Luc Massat. Plan. Présentation de l’application Fonctionnalités Gestion Authentification Validation Publication Architecture Technologie Hibernate XML/XSL/DOM4J JSF Démarche Conclusion. Midihaou. Content Management System

Download Presentation

Une base de données XML sur le net

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Une base de données XML sur le net Responsable : Jean-Luc Massat

  2. Plan • Présentation de l’application • Fonctionnalités • Gestion • Authentification • Validation • Publication • Architecture • Technologie • Hibernate • XML/XSL/DOM4J • JSF • Démarche • Conclusion

  3. Midihaou • Content Management System • Stockage • Mise à jour • Présentation • Deux Parties • Back Office • Front office

  4. Back Office Id:1234567 Nom: Dupont Prénom: Jean Age: 42 Taille:1.78 Nationalité: française Schéma Schéma Collection Collection Collection Doc Doc Doc Doc Doc Doc Doc Doc

  5. Back office • 2 types d’utilisateurs • Utilisateurs non authentifiés • Utilisateurs authentifiés • Propriétaire • Gestionnaire de collection • Administrateur

  6. Gestion des droits Les droits des utilisateurs authentifiés: • Un propriétaire peut modifier les documents lui appartenant et voir les autres documents publics • Un gestionnaire de collection peut modifier les documents de la collection dont il est responsable • L’administrateur a tous les droits sur l’ensemble des collections et des documents

  7. FrontOffice HTML Serveur HTTP Front office • Présentation des informations • Accessible au public Doc

  8. Fonctionnalités

  9. Gestion • Naviguer • Rechercher • Administrer

  10. Gestion - Naviguer • Arborescence • Code de couleur • Documents • Document publique • Document partagé • Document privé • Collections • Collection publiée • Collection non publiée

  11. Gestion - Rechercher • Un objet (Document, collection ou schéma) • Recherche précise • Recherche large • Résultat

  12. Giraud <schema> <string name="nom"/> <string name="age"/> <string name="site"/> <string name="email"/> </schema> 22 http://www.midihaou.com giraud@midihaou.com Gestion - Administrer • Création / Modification / Suppression • Configuration • présentation • modification

  13. Fonctionnalités Authentification

  14. Authentification • Nécessité pour un utilisateur de s’authentifier pour accéder à l’ensemble de ses documents sur le BackOffice • Documents représentant des utilisateurs à partir desquels on se connecte

  15. Authentification Doc utilisateur ID = jdupont Password = **** Nom : Dupont Prénom : Jean Email : jean.dupont@yahoo.fr … Authentification propriétaire propriétaire propriétaire Doc ID : Doc1 PROP : jdupont … Doc ID : Doc2 PROP : jdupont … Doc ID : Doc3 PROP : jdupont …

  16. Authentification Les liens authentifiant : • Possibilité d’accéder directement à un document via une URL reçue par mail en cas d’oubli de mot de passe • Durée de validité du lien limitée • Lien sécurisé contenant un ensemble de paramètres permettant de vérifier sa validité (message crypté) Exemple d’un lien authentifiant :

  17. Fonctionnalités Validation

  18. Validation • Un document est soumis au schéma de la collection à laquelle il appartient • Le schéma est une structure pour un document • Un document peut être invalide par rapport à son schéma (donnée non renseignée, modification du schéma…) • Il peut demeurer ainsi dans la base

  19. Validation • Module de validation de document à partir d’un schéma • Erreurs du document transmises au propriétaire du document par mail • Administrateur peut déclencher la validation sur l’ensemble des documents • Mécanisme de validation des schémas lors de leur création et de leur modification

  20. Fonctionnalités Publication

  21. Publication Document Collection • Une CSS et XSL par défaut • Une CSS et XSL par collection Données Au format XML CSS XSL Données globales Document HTML

  22. La XSL par défaut <document> <responsable>Jean-Luc Massat</responsable> <url>http://www.dil.univ-mrs.fr/masterinfo/ue.html#M26</url> <email>massat@univmed.fr</email> <text>[b]Résumé[/b] : Il s'agit de présenter...</text> <logo>25632</logo> </document> • Présentation standard des données XSL

  23. Stockage des fichiers • Génération de fichiers statiques • Stockage à plat des fichiers • Nom des fichiers préfixés • Schéma : sch + id schéma • Collection : col + id collection • Document : doc + id document • Fichier : file + id document

  24. Navigation Collection Documents Schéma Index.html Collection Documents Schéma Collection Documents

  25. Architecture

  26. Presentation Metier Data Access Object Une architecture en couche SGBD

  27. Circulation des données Presentation • Echange des beans entre les couches • La couche métier offre des services applicatifs Beans données Metier DAO

  28. Une architecture en couche Présentation Métier Interface Data Access Object Interface

  29. Inversion des dépendances Dépendance • La classe A utilise la classe B A B A Interface • Le couple (A, Interface) impose les • méthodes à implémenter Dépendance B

  30. Une architecture en couche Présentation Métier Interface BD XML SGBD Data Access Object XML Data Access Object Interface

  31. Présentation Présentation Métier Interface Data Access Object Interface

  32. Des vues MVC Présentation Contrôleur Traitements graphique Traitements métier

  33. Une structure évolutive • L’organisation en couche facilite l’ajout de fonctionnalités et la maintenance • Meilleure séparation des tâches

  34. Technologies

  35. Hibernate • outil d'ORM (object Relationnal Mapping) • manipuler les données et assurer leur persistance

  36. La gestion optimiste • Problème : mise à jour du même document par plusieurs utilisateur.

  37. XML/XSLT • XML(eXtensible Markup Language) • langage de balisage • format de description des données. • XSLT (Extensible Stylesheet Language Transformation) • transforme des documentsXML dans divers formats comme le HTML,PDF,SVG et ... le XML.

  38. DOM4J • DOM4J: API Open Source JAVA • Librairie permettant de travailler sur: • XML,XPATH, XSLT.

  39. Le Cache • Stocker des schémas et documents • Augmenter la vitesse de l’application • Taille fixée • Suppression de l’élément le moins utilisé

  40. Technologie Java Server Faces

  41. Java Server Faces • JSF est un standard J2EE. • Framework basé sur les technologies JSP et Servlets. • Plusieurs implémentations de la norme JSF : • RI de SUN • MyFaces d’Apache • Facelets • Modèle de développement événementiel et orienté composant. • JSF permet : • mapping HTML/Objet • modèle riche de composants graphiques réutilisables • liaison simple entre actions côté client et code Java coté serveur

  42. Validateurs et Converteurs JSF • Implémentation de validateurs JSF • Validation à la saisie des formulaires • Conversion de données saisies dans un formulaire

  43. Les Messages JSF • Permet de stocker des messages • Facilite l'internationalisation des applications • Aucun texte écrit directement dans notre application

  44. Binding de Composants JSF • private inputText input ; composant inputText Type Line composant inputLabel Type Number composant inputSelectOne Type Enum composant inputTextArea Type Text Un composant panelGrid complexe

  45. Composant MyFaces • Librairie Tomahawk : • Tree2 • Date • TabbedPane • DataScroller • FileUpload • InputSuggest • etc …

  46. Composant MyFaces Tree2

  47. Composant MyFaces TabbedPane

  48. Démarche

  49. Planning 1 semaine 3 semaines 2 semaines et demi Analyse Conception Développement Rapport V0 V1

  50. V0 Fonctions de base (création, modification, suppression, authentification, présentation) V1 Validation Recherche Front office Lotissement

More Related