Une base de données XML sur le net
-
Upload
yen-cantrell -
Category
Documents
-
view
32 -
download
1
description
Transcript of Une base de données XML sur le net
![Page 1: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/1.jpg)
Une base de données XML sur le net
Responsable : Jean-Luc Massat
![Page 2: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/2.jpg)
Plan Présentation de l’application Fonctionnalités
Gestion Authentification Validation Publication
Architecture Technologie
Hibernate XML/XSL/DOM4J JSF
Démarche Conclusion
![Page 3: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/3.jpg)
Midihaou
Content Management SystemStockage Mise à jourPrésentation
Deux PartiesBack OfficeFront office
![Page 4: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/4.jpg)
CollectionCollectionCollection
Back Office
Doc
Doc
Doc
Doc
DocDoc
Doc
Doc
Schéma Schéma
Id:1234567Nom: DupontPrénom: Jean
Age: 42Taille:1.78
Nationalité: française
![Page 5: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/5.jpg)
Back office
2 types d’utilisateursUtilisateurs non authentifiésUtilisateurs authentifiés
Propriétaire Gestionnaire de collection Administrateur
![Page 6: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/6.jpg)
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
![Page 7: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/7.jpg)
Front office Présentation des informations Accessible au public
DocFrontOffice
HTMLServeur HTTP
![Page 8: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/8.jpg)
Fonctionnalités
![Page 9: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/9.jpg)
Gestion
Naviguer Rechercher Administrer
![Page 10: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/10.jpg)
Gestion - Naviguer Arborescence Code de couleur
Documents Document publique Document partagé Document privé
Collections Collection publiée Collection non publiée
![Page 11: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/11.jpg)
Gestion - Rechercher Un objet (Document, collection ou schéma)
Recherche précise Recherche large Résultat
![Page 12: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/12.jpg)
Gestion - Administrer
Création / Modification / Suppression Configuration
présentationmodification
<schema> <string name="nom"/> <string name="age"/> <string name="site"/> <string name="email"/></schema>
Giraud
22
http://www.midihaou.com
![Page 13: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/13.jpg)
Fonctionnalités
Authentification
![Page 14: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/14.jpg)
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
![Page 15: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/15.jpg)
AuthentificationDoc utilisateur
ID = jdupontPassword = ****Nom : DupontPrénom : Jean
Email : [email protected]…
Doc
ID : Doc1PROP : jdupont
…
propriétairepropriétaire
propriétaire
Authentification
Doc
ID : Doc2PROP : jdupont
…
Doc
ID : Doc3PROP : jdupont
…
![Page 16: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/16.jpg)
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 :
![Page 17: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/17.jpg)
Fonctionnalités
Validation
![Page 18: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/18.jpg)
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
![Page 19: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/19.jpg)
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
![Page 20: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/20.jpg)
Fonctionnalités
Publication
![Page 21: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/21.jpg)
Publication
Une CSS et XSL par défaut
Une CSS et XSL par collection
DonnéesAu format
XML
Document
XSL
CSS
Collection
Donnéesglobales
DocumentHTML
![Page 22: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/22.jpg)
<document>
<responsable>Jean-Luc Massat</responsable>
<url>http://www.dil.univ-mrs.fr/masterinfo/ue.html#M26</url>
<email>[email protected]</email>
<text>[b]Résumé[/b] : Il s'agit de présenter...</text>
<logo>25632</logo>
</document>
La XSL par défaut
Présentation standard des données
XSL
![Page 23: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/23.jpg)
Stockage des fichiers
Génération de fichiers statiques Stockage à plat des fichiers Nom des fichiers préfixés
Schéma : sch + id schémaCollection : col + id collectionDocument : doc + id documentFichier : file + id document
![Page 24: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/24.jpg)
Navigation
SchémaCollection
Collection
Collection
Index.html
Schéma
Documents
Documents
Documents
![Page 25: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/25.jpg)
Architecture
![Page 26: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/26.jpg)
Une architecture en couche
SGBD
![Page 27: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/27.jpg)
Circulation des données
DAO
Metier
Presentation Echange des beans entre les couches
La couche métier offre des services applicatifs
Beansdonnées
![Page 28: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/28.jpg)
Une architecture en couche
Data Access Object
Métier
Présentation
Interface
Interface
![Page 29: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/29.jpg)
Inversion des dépendances
A BDépendance
A Interface
Dépendance
B
La classe A utilise la classe B
Le couple (A, Interface) impose lesméthodes à implémenter
![Page 30: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/30.jpg)
Une architecture en couche
Data Access ObjectXML
Data Access Object
Métier
Présentation
Interface
InterfaceBD
XMLSGBD
![Page 31: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/31.jpg)
Présentation
Data Access Object
Métier
Présentation
Interface
Interface
![Page 32: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/32.jpg)
Des vues MVC
Présentation
Traitementsgraphique
Traitementsmétier
Contrôleur
![Page 33: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/33.jpg)
Une structure évolutive
L’organisation en couche facilite l’ajout de fonctionnalités et la maintenance
Meilleure séparation des tâches
![Page 34: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/34.jpg)
Technologies
![Page 35: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/35.jpg)
Hibernate
outil d'ORM (object Relationnal Mapping) manipuler les données et assurer leur
persistance
![Page 36: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/36.jpg)
La gestion optimiste Problème : mise à jour du même document par plusieurs
utilisateur.
![Page 37: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/37.jpg)
XML/XSLT
XML(eXtensible Markup Language) langage de balisage format de description des données.
XSLT (Extensible Stylesheet Language Transformation) transforme des documents XML dans divers
formats comme le HTML,PDF,SVG et ... le XML.
![Page 38: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/38.jpg)
DOM4J
DOM4J: API Open Source JAVA Librairie permettant de travailler sur:
XML,XPATH, XSLT.
![Page 39: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/39.jpg)
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é
![Page 40: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/40.jpg)
Technologie
Java Server Faces
![Page 41: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/41.jpg)
Java Server Faces Framework basé sur les technologies JSP et Servlets.
JSF est un standard J2EE. 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
![Page 42: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/42.jpg)
Validateurs et Converteurs JSF Implémentation de validateurs JSF Validation à la saisie des formulaires
Conversion de données saisies dans un formulaire
![Page 43: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/43.jpg)
Les Messages JSF Permet de stocker des messages Facilite l'internationalisation des applications Aucun texte écrit directement dans notre application
![Page 44: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/44.jpg)
composant inputLabel
composant inputText
composant inputSelectOne
composant inputTextArea
Binding de Composants JSF
private inputText input ;
Un composant panelGrid complexe
Type Line
Type Enum
Type Number
Type Text
![Page 45: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/45.jpg)
Librairie Tomahawk : Tree2 Date TabbedPane DataScroller FileUpload InputSuggest etc …
Composant MyFaces
![Page 46: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/46.jpg)
Composant MyFacesTree2
![Page 47: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/47.jpg)
Composant MyFacesTabbedPane
![Page 48: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/48.jpg)
Démarche
![Page 49: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/49.jpg)
Planning
AnalyseConception
3 semaines 2 semaines et demi
Développement
V0 V1Rapport
1 semaine
![Page 50: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/50.jpg)
V1
ValidationRechercheFront office
Lotissement
V0
Fonctions de base
(création, modification, suppression,
authentification, présentation)
![Page 51: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/51.jpg)
Conclusion
![Page 52: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/52.jpg)
Résultat obtenu
Implémentation des principales fonctionnalités
Évolutivité
![Page 53: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/53.jpg)
Bilan personnel
Bilan horaire : 2300 heures Formation et application de nouvelles
technologies
![Page 54: Une base de données XML sur le net](https://reader035.fdocument.pub/reader035/viewer/2022062408/56813258550346895d98e317/html5/thumbnails/54.jpg)
Adresses
Présentation : http://www.midihaou.is.dreaming.org
Subversion : http://www.midihaou-svn.is.dreaming.org
Front-Office : http://www.midihaou-frontoffice.is.dreaming.org
Back-Office : http://www.midihaou-backoffice.is.dreaming.org