une base de données xml sur le net responsable : jean-luc massat

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

Upload: alais-lesage

Post on 04-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

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

Une base de données XML sur le net

Responsable : Jean-Luc Massat

Page 2: 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

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

Midihaou

Content Management SystemStockage Mise à jourPrésentation

Deux PartiesBack OfficeFront office

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Front office Présentation des informations Accessible au public

DocFrontOffice

HTMLServeur HTTP

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

Fonctionnalités

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

Gestion

Naviguer Rechercher Administrer

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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

[email protected]

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

Fonctionnalités

Authentification

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Fonctionnalités

Validation

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Fonctionnalités

Publication

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

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 Responsable : Jean-Luc Massat

<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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Navigation

SchémaCollection

Collection

Collection

Index.html

Schéma

Documents

Documents

Documents

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

Architecture

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

Une architecture en couche

SGBD

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

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 Responsable : Jean-Luc Massat

Une architecture en couche

Data Access Object

Métier

Présentation

Interface

Interface

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Présentation

Data Access Object

Métier

Présentation

Interface

Interface

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

Des vues MVC

Présentation

Traitementsgraphique

Traitementsmétier

Contrôleur

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

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 Responsable : Jean-Luc Massat

Technologies

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Technologie

Java Server Faces

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Librairie Tomahawk : Tree2 Date TabbedPane DataScroller FileUpload InputSuggest etc …

Composant MyFaces

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

Composant MyFacesTree2

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

Composant MyFacesTabbedPane

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

Démarche

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

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 Responsable : Jean-Luc Massat

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 Responsable : Jean-Luc Massat

Conclusion

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

Résultat obtenu

Implémentation des principales fonctionnalités

Évolutivité

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

Bilan personnel

Bilan horaire : 2300 heures Formation et application de nouvelles

technologies

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

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