Upload
emmanuel-hugonnet
View
3.241
Download
4
Embed Size (px)
DESCRIPTION
Introduction à l'API Java Content repository dont l'(implémentation de référence est Apache Jackrabbit.
Citation preview
Java Content Repository
Gérer son contenu avec Jackrabbit
Hugonnet EmmanuelArchitecte [email protected]
http://www.silverpeas.comhttp://www.ehsavoie.comhttp://www.twitter.com/ehsavoie
Java Content Repository Page : Page : 22
Silverpeas : la cibleSilverpeas : la cible
Java Content Repository Page : Page : 33
Une architecture de « services »Une architecture de « services »
JCR
Java Content Repository Page : Page : 44
Principales références Principales références
Etat de Genève
CIRPP
Java Content Repository Page : Page : 55
Avant personnalisationAvant personnalisation
Java Content Repository Page : Page : 66
SilverpeasSilverpeas
Java Content Repository Page : Page : 77
SilverpeasSilverpeas
Java Content Repository Page : Page : 88
Qu'est ce qu'un Content Repository ?
Espace de stockage de donnéesContenu structuré et destructuréSupport de données de différentes taillesGestion des transactions, des verrous, des versions, recherche et indexation, observation
Java Content Repository Page : Page : 99
Respectant JSR
*de nombreux sont enregistrés auprès TCK Connecteurs Tiers
Java Content Repository Page : Page : 1010
Le JDBC du Contenu
Repository XML Repository Fichier Repository SGBD
ApplicationApplication
JCR API
Java Content Repository Page : Page : 1111
Le Meilleur des 2 Mondes
Java Content Repository Page : Page : 1212
Une Spécification à étages
Java Content Repository Page : Page : 1313
Structure Hiérarchique 1/2
Un ou plusieurs Workspace(s)Chaque Workspace se compose d'une arborescence d'Item(s)Un Item peut être soit un Node soit une PropertyUne Property est forcément une feuille et stocke l'informationUn Node structure le contenu
Java Content Repository Page : Page : 1414
Une structure hiérarchique 2/2
Hiérarchie des Types
nt:hierarchyNode
nt:folder
nt:file
nt:linkedFile
nt:resource
Hiérarchie du Contenu
Java Content Repository Page : Page : 1515
Exemple de données
Java Content Repository Page : Page : 1616
Un peu de code …
Java Content Repository Page : Page : 1717
Déploiement par Application
Java Content Repository Page : Page : 1818
Déploiement par Serveur
Java Content Repository Page : Page : 1919
Déploiement Externe
Java Content Repository Page : Page : 2020
Fonctionnalités Avancées Références
Rock
tags Titres
Titre
Titre
Pop Top 10
playlists
Choix
lienlienlien
Java Content Repository Page : Page : 2121
Fonctionnalités Avancées Recherche
Recherche XPath SQL
Date de Sortie
/jcr:root/slv:titres//element(*,slv:titre) [@sortie > xs:dateTime(‘…’)]
SELECT * FROM slv:titreWHERE jcr:path LIKE ‘/slv:titres/%’AND sortie > DATE ‘…’
Mot-clefs de la Critique
/jcr:root/slv:titres//element(*,slv:critique)/jcr:content[jcr:contains(.,’…’)]
SELECT * FROM slv:critiqueWHERE jcr:path LIKE ‘/slv:titres/%’AND CONTAINS(*,‘…’)
Java Content Repository Page : Page : 2222
Fonctionnalités Avancées Versioning
Version store
LiveStaging
Java Content Repository Page : Page : 2323
Fonctionnalités Avancées Observation
5 types d'évènement
NODE_ADDEDNODE_REMOVEDPROPERTY_ADDED PROPERTY_REMOVEDPROPERTY_CHANGED
Filtres possibles pour les ListenersOn a l'utilisateur et le chemin comme attributs de l'évènement
Java Content Repository Page : Page : 2424
JCR 2.0 JSR-283
Final Draft en cours de révisionXPath et SQL remplacés par Java Binding Query Object et SQL-2 (JOIN)ACL plus complètePossibilité de gérer les Workspaces et les typesDe nouveau types (binary notamment)Cycle de vie d'un contenu pour pouvoir l'associer à un workflowUn système de Versionning linéaireJournalisation des opérations pour l'ObservationCIMS : interopérabilité entre repositories JCR
Java Content Repository Page : Page : 2525
Questions