Conception et développement d un outil de gestion de contenu Web Rapport final

Dimension: px
Commencer à balayer dès la page:

Download "Conception et développement d un outil de gestion de contenu Web Rapport final"

Transcription

1 Master 2 Informatique Professionnel et Recherche Unifié Conception et développement d un outil de gestion de contenu Web Rapport final Réalisé par : ESCANDELL Frédéric, NOUAILLES Yoann, MORA Michaël et QUINTON Clément Projet encadré par Mr Christophe DONY Année universitaire Powered by L A TEX

2 Remerciements Nous tenons à remercier tout particulièrement notre tuteur, Mr Thierry Chatel, pour son aide précieuse et sa disponibilité tout au long du développement de notre projet. Nous avons pu compter sur sa présence et son soutien à tout moment, que ce soit par mail ou lors de nos rencontres au siège d IOcean. Nous remercions également M. Christophe Dony, enseignant chercheur à l Université Montpellier 2, pour sa présence lors de nos différentes réunions, ses points de vue avisés et ses remarques pertinentes qui nous ont fait avancer. 1

3 Glossaire API : Application Programming Interface ou API. Une interface de programmation permet de définir la manière dont un composant informatique peut communiquer avec un autre. C est un ensemble de fonctions, procédures ou classes mises à disposition des programmes informatiques par une bibliothèque logicielle, un système d exploitation ou un service. La connaissance des API est indispensable à l interopérabilité entre les composants logiciels. CAPTCHA : Completely Automated Public Turing test to tell Computers and Humans Apart. Un captcha est une forme de test de Turing permettant de différencier de manière automatisée un utilisateur humain d un ordinateur. Parce que le test est réalisé par un ordinateur, en opposition avec les tests de Turing standard réalisés par des humains, un captcha est souvent décrit comme un test de Turing inversé. Ce terme est néanmoins ambigu parce qu il pourrait aussi signifier que les participants essaient de prouver qu ils sont des ordinateurs. Composant JSF : composant d affichage, placé dans la page Web (fichier Facelets), pour afficher un élément de la page : texte, bouton, table, lien, etc. Il pourra être lié à un objet Java, pour afficher ou permettre de saisir la valeur d une propriété, dans le cas d un texte ou d un champ de saisie, ou pour appeler une méthode de l objet, dans le cas d un bouton ou d un lien. Composant Seam : classe Java dont l instance est repérée par un nom de composant, et publiée par le framework Seam dans un certain contexte, lié à l application, à la session utilisateur, à la page courante, etc. Le framework Seam gère l injection de dépendances entre les composants, en alimentant lors de chaque appel d une méthode d un composant toutes ses variables d instance faisant référence à d autres composants. Un composant JSF s écrit dans une page Facelets sous la forme <h:inputtext>, où le préfixe avant le signe : est le namespace de la bibliothèque de composants à laquelle il appartient. Deux bibliothèques de composants, préfixées par h : et f : sont fournies en standard avec JSF, d autres composants sont apportés par le framework Seam (ceux préfixés par s :) ou la technologie Facelets. CSS : Cascading Style Sheets : feuilles de style en cascade est un langage informatique qui sert à décrire la présentation des documents HTML et XML. Les standards définissant CSS sont publiés par le World Wide Web Consortium (W3C). Hibernate : Hibernate est un projet Open Source visant à proposer un outil de mapping entre les objets et des données stockées dans une base de données relationnelle. JPA : l API de persistance Java des données, Java Persistance API abrégé en JPA, fait partie de la spécification EJB 3. Spécification EJB3 qui fait elle-même partie de la plate-forme JEE 5.0. La persistance des données en EJB3 est possible à l intérieur d un conteneur EJB3 aussi bien que dans une application autonome J2SE en dehors d un conteneur particulier. Cette API réalise la fusion des travaux sur Hibernate avec la continuité des spécifications EJB précédentes 2.0 et

4 Langage JSF EL, ou JSF Expression Langage : c est le langage d expression utilisé dans les vues JSF (fichiers Facelets). Il est similaire au langage d expression des JSP. Les expressions sont délimitées par #{...} LDAP : Lightweight Directory Access Protocol (LDAP) est à l origine un protocole permettant l interrogation et la modification des services d annuaire. Ce protocole repose sur TCP/IP. Il a cependant évolué pour représenter une norme pour les systèmes d annuaires, incluant un modèle de données, un modèle de nommage, un modèle fonctionnel basé sur le protocole LDAP, un modèle de sécurité et un modèle de réplication. Un annuaire LDAP respecte généralement le modèle X.500 édicté par l UIT-T : c est une structure arborescente dont chacun des nœuds est constitué d attributs associés à leurs valeurs. Le nommage des éléments constituant l arbre (racine, branches, feuilles) reflète souvent le modèle politique, géographique ou organisationnel de la structure représentée. La tendance actuelle est d utiliser le nommage DNS pour les éléments de base de l annuaire (racine et premières branches, domain components ou dc=...). Les branches plus profondes de l annuaire peuvent représenter des unités organisationnelles ou des groupes (organizational units ou ou=...), des personnes (common name ou cn=... voire unique identifier uid=...),... L assemblage de tous les composants (du plus précis au plus général) d un nom forme son distinguished name, l exemple suivant en présente deux : cn=ordinateur,ou=machines,dc=exemple,dc=fr cn=jean,ou=gens,dc=exemple,dc=fr Vue Facelets : la technologie Facelets est une alternative aux JSP pour écrire les pages web d une application JSF. Les pages Facelets s écrivent en XHTML, dans des fichiers avec une extension.xhtml, contenant une hiérarchie de balises XHTML et de composants JSF. 3

5 Table des matières 1 Introduction 9 2 Présentation d IOcean 10 3 Matériel et méthodes Cahier des charges Le contexte Exigences fonctionnelles Exigences techniques Organisation du groupe Gantt Méthodes et outils nécessaires / à disposition Java EE Seam Gestionnaire de projet et gestionnaire de version Mantis Eclipse JBoss Application Server PostgreSQL État de l art Joomla! Spip Drupal Typo Conception Diagramme de classes Diagramme d états Pattern état Pattern décorateur

6 3.5.5 Persistance : Réalisation Authentification avec Seam Formulaire d ajout d un article Formulaire d ajout d une section/catégorie Partie publique Template et feuille de style Résultats Identification et sécurité Partie privée : Le manager d articles Le manager des catégories Ajout d un article Ajout d une section/catégorie Ajout d un onglet Partie publique : Discussion 67 6 Conclusion 68 7 Bibliographie 69 8 Annexes Documents de conception Diagramme de déploiement Diagrammes de cas d utilisation

7 Table des figures 2.1 Bannière d IOcean.fr Fonctionnement d un CMS Diagramme de Gantt Seam framework Les différents composants de la couche de présentation Les interactions autour de Seam L interface de Mantis Joomla! Spip Drupal Typo Diagramme de classes Diagramme d états Pattern état, première version Pattern état, deuxième version Modélisation de la publication, première version Exemple de publication chaînée Notre solution : utilisation du pattern décorateur Processus d identification Seam remoting Extrait de editersection.xhtml Extrait de publication.xhtml Formulaire d identification Formulaire d inscription Accès interdit Liste des articles Le manager des catégories

8 4.6 Formulaire d ajout d un article Ajout d un logo à l article Ajout d informations à l article Formulaire d ajout d une section Génération d onglet Vue d ensemble de la partie publique Focus sur un article Diagramme de cas d utilisation articles Diagramme de cas d utilisation sections/catégories Diagramme de cas d utilisation Back Office Diagramme de cas d utilisation Front Office

9 Liste des tableaux 3.1 Répartition des tâches Annotations portant sur l utilisateur Annotations portant sur le rôle

10 1 Introduction L objectif de ce TER est l étude de faisabilité et le développement d un système de gestion de contenu, ou CMS (Content Management System) utilisant le framework Seam. Un CMS est un site web disposant de fonctionnalités de publication offrant une interface d administration permettant à des utilisateurs privés de créer ou agencer des articles organisés en rubriques. Ces articles une fois publiés sont accessibles à tous les utilisateurs sur une partie publique. Dans un premier temps notre travail fut de prendre en main le framework Seam et les technologies qui lui sont associées. En effet n ayant aucune expérience dans ce domaine nous avons du nous familiariser avec une nouvelle technologie complexe pour ensuite mettre à profit les connaissances acquises pour répondre aux besoins exprimés dans le cahier des charges. Dans un second temps nous avons répondu aux exigences du cahier des charges en terme d utilisation et d intégration à l application cliente. En effet ce CMS doit pouvoir s intégrer facilement à l application du client à laquelle il est dédié, dite application spécifique. L interface est définie par des templates et des feuilles de styles ce qui la rend facilement modifiable en fonction des besoins spécifiques du client. Le CMS peut servir à publier des informations directement liées à l application spécifique, concernant son utilisation, ou constituer un véritable intranet informatif de la société, sans rapport direct avec l application, si ce n est par une interface d administration homogène avec celle de l application (menus, gestion des utilisateurs et des droits). 9

11 2 Présentation d IOcean Fig. 2.1 Bannière d IOcean.fr IOcean est une SSII créée en 2000 et spécialisée dans les nouvelles technologies. Basée à Montpellier, mais présente également à Paris et Toulon, elle emploie environ 25 personnes. Avec en juin 2008 un chiffre d affaires de 1,8 million d euros, elle est depuis sa création en fort développement, dépassant régulièrement les 20% de croissance. IOcean est spécialisée dans le développement d applications spécifiques de gestion, avec pour l essentiel une interface Web et AJAX, qu il s agisse de sites intranet ou extranet, ou encore de modules applicatifs intégrés au système d information du client. En misant sur les compétences et l expérience de ses équipes, IOcean fait bénéficier de son expertise des clients prestigieux tels que les Editions EYROLLES, le CIRAD, les SAFER, l AFM, l UFC-Que Choisir, la Fédération Française de Basket-Ball, les Transports de l Agglomération de Montpellier, et bien d autres encore qui n hésitent pas à lui confier des projets stratégiques. Dans toutes ses missions, la volonté affichée par IOcean est de se baser sur des composants Open Source robustes et modernes afin de bâtir des solutions innovantes. Un effort particulier de recherche et développement est réalisé sur l ensemble des applications pour permettre de conforter leurs points forts, tels qu une ergonomie Web avancée largement basée sur AJAX, et de profiter au mieux des avancées technologiques. 10

12 3 Matériel et méthodes 3.1 Cahier des charges Le contexte Les projets Java confiés à IOcean sont développés avec le framework Seam qui lui-même coordonne les frameworks JSF et Hibernate. Cette plateforme puissante et novatrice répond avec élégance aux besoins des développeurs d applications Web. Or il est courant qu un projet d application Web, destiné à être déployé sur un intranet, comporte une partie gestion de contenu (CMS), qu il s agisse d un contenu informatif, d un petit site vitrine, ou simplement de quelques pages de présentation de l application. Mais le framework Seam n intègre pas de CMS, ni ne dispose d un CMS dédié. Le but de ce TER n est pas d ajouter un CMS de plus aux centaines qui existent sur le marché, mais de créer un outil, de toutes pièces ou à partir d une base existante, qui puisse très facilement être intégré aux applications Web spécifiques développées par IOcean. Ainsi cet outil de gestion de contenu doit pouvoir se brancher sur la gestion de la sécurité et des utilisateurs de l application Web, afin que l ensemble soit cohérent et n impose pas une double gestion des utilisateurs. Pour les mêmes raisons de cohérence ergonomique, l outil de gestion de contenu doit être conçu pour s intégrer facilement aux templates de pages de l application Web, aussi bien pour la partie privée que pour la partie publique du site. 11

13 Fig. 3.1 Fonctionnement d un CMS 12

14 3.1.2 Exigences fonctionnelles Intranet informatif Le CMS peut servir à publier des informations directement liées à l application spécifique, concernant son utilisation, ou constituer un véritable intranet informatif de la société, sans rapport direct avec l application, si ce n est par une interface d administration homogène avec celle de l application (menus, gestion des utilisateurs et des droits). Contenu Le contenu à gérer par le CMS est l élément central. On retrouve notamment : des articles, organisés en rubriques, affichés dans une page entière (un article par page), avec du texte mis en forme, et pouvant comporter des images, ainsi qu une vignette servant de logo à l article pour l affichage sur la liste des articles. des nouvelles brèves (news), dont les plus récentes sont affichées sur une même page, avec la possibilité d accéder aux pages de nouvelles plus anciennes. des documents à télécharger (PDF, Word ou autres), joints à un article. tout ce qui peut être indispensable et utile. Les articles et les nouvelles brèves ne sont pas forcément différents en nature au niveau de la gestion du contenu. La différence peut résider seulement dans les templates d affichage. Validation et publication, et droits des utilisateurs Certains utilisateurs doivent pouvoir soumettre des articles ou des nouvelles sans avoir le droit de les publier directement. Les utilisateurs autorisés à publier voient la liste des articles soumis, et peuvent les publier éventuellement après modification. 13

15 3.1.3 Exigences techniques Templates des pages publiques Les templates des pages publiques seront créés spécifiquement pour un client, en cohérence avec ceux de l application spécifique (charte graphique, menus, etc.). Ces templates doivent être des pages Facelets et il peut être utile de fournir des composants Facelets pour simplifier leur écriture. Ces composants doivent faire appel aux composants Seam fournis par le CMS, par exemple pour récupérer les données d un article, ou la liste des derniers articles d une rubrique. Partie privée interface de gestion du contenu Comme les pages publiant le contenu seront réalisées spécifiquement pour chaque projet client, les pages Web fournies par le CMS et utilisées telles quelles seront celles de la partie privée, permettant de gérer l arborescence des rubriques du site, de rédiger des articles pouvant contenir des images et des documents joints, et de les publier. L aspect visuel (menus, charte graphique) doit pouvoir être facilement adapté en fonction des contraintes du client, pour pouvoir intégrer la partie privée du CMS à l interface d administration de l application spécifique. Gestion des utilisateurs et des droits La gestion des utilisateurs et des droits est généralement implémentée dans l application spécifique, et sert également au CMS, pour ne pas avoir à gérer les droits de deux façons séparées. Les droits de gestionnaire et de rédacteur peuvent dépendre des rubriques du contenu : un utilisateur peut être gestionnaire d une rubrique, seulement rédacteur pour une autre rubrique, et n avoir aucun droit sur une troisième rubrique. Le CMS doit fournir des interfaces Java avec les méthodes nécessaires, qui seront implémentées par un ou plusieurs composants Seam de l application spécifique. Par exemple des méthodes pour : obtenir des infos sur l utilisateur connecté (nom, prénom). savoir si l utilisateur connecté est administrateur. savoir si l utilisateur connecté est gestionnaire d une rubrique donnée. savoir si l utilisateur connecté est rédacteur d une rubrique donnée. Portabilité de l application En plus des contraintes définies ci-dessus nous avons décidé d assurer l interopérabilité de notre application afin que celle-ci puisse être déployée sous plusieurs systèmes d exploitations (mac OS X, linux, Windows XP, Vista). 14

16 3.2 Organisation du groupe Tous les éudiants de ce groupe étant dans le même cursus, l emploi du temps nous a laissé assez de disponibilités pour faire des réunions régulières et travailler ensemble. Un autre groupe d étudiants étant sur le même sujet de TER nous avons décidé de réaliser des reunions communes pour nos 2 groupes, effectuées au sein d IOcean. Cela nous a permis de voir l évolution de chacun des groupes de mettre en commun nos connaissances et de valider nos choix. Ces reunions ont pu etre fixées en accord avec tout le monde grâce à l utilisation d un doodle, gestionnaire de réunions. Etudiant Escandell Frédéric Mora Michaël Nouailles Yoann Quinton Clément Partie Articles Authentification Partie publique Sections/catégories Tab. 3.1 Répartition des tâches Cette façon de travailler nous a permis de gagner en efficacité et en rapidité car la partie intégration de code était quasiment nulle, grâce à l utilisation du serveur SVN. De plus, même si les différentes parties ont été développées individuellement, chaque membre du groupe a fait un compte rendu régulier de son travail aux autres. Les différents problèmes que nous avons rencontrés ont ainsi été résolus en groupe. Chacun d entre nous a ainsi pu travailler à son rythme, l ensemble de l application évoluant à chaque modification effectuée. Grâce à ce système de développement, chaque module de notre application peut évoluer indépendamment du reste du logiciel. 15

17 3.2.1 Gantt Fig. 3.2 Diagramme de Gantt 16

18 3.3 Méthodes et outils nécessaires / à disposition Java EE Java EE est un ensemble de composants, concepts et principes ayant pour but de fournir des services aux applications hébergées au sein d un serveur. Java EE définit une spécification d un serveur d application ainsi que des procédures à suivre. L implémention du serveur est réalisée par des entreprises souhaitant utiliser cette spécification, comme par exemple RedHat avec JBoss, IBM avec Websphere... En Java EE la logique applicative peut être séparée en différentes couches qui peuvent être installées sur différentes machines. Couche présentation : (navigateur web, application client riche....) Technologies : XHTML, XML, JavaScript. Les pages écrites en utilisant les frameworks comme JSP, Facelets et JSF permettent de générer des pages XHTML interprétables par les navigateurs Web. Couche application : serveur Java EE Technologies : Servlets, JSP, Facelets... Cette couche sert de médiateur entre la couche présentation et la couche métier. Celle-ci représente le contrôleur dans un modèle MVC. Le composant de base utilisé dans un environnement Java EE est la servlet. Les servlets sont chargées de gérer les requêtes et de communiquer avec la base puis de rediriger vers la couche présentation. Couche métier : serveur Java EE Technologies : EJB, JTA,JMS, JDBC. Couche principale de l application, elle doit aussi bien s occuper de l accès aux données que de son traitement suivant les principes de l entreprise. définitive. Couche d accès aux données : serveur de données (SGBD) Correspondant aux données qui sont destinées à être conservées sur la durée, voire de manière 17

19 3.3.2 Seam Fig. 3.3 Seam framework Seam est un framework Open Source de développement rapide d application Web Java EE, créé par JBoss. La plateforme Seam est un assemblage de plusieurs frameworks. Voici ceux que nous avons utilisés : Couche de présentation : JSF et sa librairie de composants RichFaces et Facelets. JSF est constitué principalement : d un ensemble d APIs pour la représentation et la gestion des composants, de leur état, des évènements, de la validation des entrées et la conversion des sorties, l internationalisation... de deux jeux de composants standard (affichage de texte, saisie de texte, tables, zone à cocher, etc). Il utilise JSP par défaut, mais peut être utilisé avec d autres technologies, comme par exemple Facelets ou XUL. RichFaces : jeu de composants additionnels supportant AJAX pour enrichir ceux de JSF qui s avèrent insuffisants pour le développement d applications d entreprises. Facelets : framework permettant de faire des vues de JSF basées sur le modèle HTML. Il permet de coder des vues avec de simples balises XML, bien plus familières que le codage de JSP. Il offre également un support à JSF pour l utilisation de templates, ce qui réduit la quantité de code produite. 18

20 Exemple d une page utilisant ces trois frameworks : Fig. 3.4 Les différents composants de la couche de présentation Couche application : Seam lui-même pour la gestion des composants applicatifs et l inversion de contrôle (IoC). Couche métier : Entity Beans de la spécification EJB 3.0 (JPA). Seam agit comme un chef d orchestre : les vues JSF (pages Web ou portions de pages Web) accèdent aux composants applicatifs par l intermédiaire de Seam. les composants applicatifs accèdent à d autres composants applicatifs par l intermédiaire de Seam. les composants applicatifs accèdent aux entités persistantes du modèle via le contexte de persistance géré par Seam. 19

21 Fig. 3.5 Les interactions autour de Seam Notre première démarche fut bien évidemment l étude de ce framework. Sa prise en main, du fait de sa richesse et de ses multiples fonctionnalités offertes, est bien plus ardue que pour une simple API. Nous nous sommes donc plongé dans une étude de la documentation Seam, et grâce à une utilisation et interprétation des différents exemples fournis dans la release Seam GA nous avons acquis l expérience nécessaire au développement de notre TER. La distribution Seam fournit un petit utilitaire en ligne de commande, seam-gen, que nous avons utilisé. Cet outil rend très facile la mise en place d un projet Eclipse car il génère un squelette de code de notre application Seam ainsi que du reverse engineering depuis la base de données fournie. Il permet, en lui donnant la base de données utilisée, son connecteur, le serveur d application et quelques chemins pour situer les sources du projet, de facilement faire fonctionner un projet Seam. 20

22 3.3.3 Gestionnaire de projet et gestionnaire de version Pour mettre en commun et partager le travail de chaque membre du groupe, nous avons utilisé le logiciel Subversion. Subversion est un logiciel de gestion de version, qui centralise tout le travail effectué sur un serveur Web. Il permet de garder un historique des différentes versions des fichiers du projet. Il offre la possibilité de revenir rapidement à un moment particulier du développement, ou de comparer et voir les différences entre deux versions. Subversion permet au groupe d accéder et de travailler en même temps sur différents fichiers du logiciel. Cela facilite le travail car le code source du logiciel n a pas besoin d être envoyé par . Le code source est accessible via Internet et protégé avec un login et un mot de passe. Subversion intègre au mieux les différentes modifications, même si elles portent sur le même fichier. Si c est exactement la même partie du même fichier qui a été modifiée, le serveur prévient alors l utilisateur qu il y a un conflit, et lui propose de modifier sa version locale, ou celle en ligne. 21

23 3.3.4 Mantis Mantis est un système de suivi d anomalies logiciel (bug) basé sur une interface Web. Il est écrit en PHP, requiert une base de données (MySQL, SQL Server et DB2 supportées) et un serveur Web. Cette application Web nous a permis de centraliser la découverte de bugs et d assurer leur traçabilité. En effet, dès qu un bug est découvert par un membre du groupe, il est ajouté à la plateforme avec une description détaillée et est assigné à la personne responsable de la partie dont provient le bug. Celle-ci reçoit instantanément un mail l avertissant de la présence de ce bug. Dès lors que le problème est rectifié il est marqué «résolu» sur la plateforme et tous les membres du groupe sont prévenus. Fig. 3.6 L interface de Mantis 22

24 3.3.5 Eclipse Nous avons utilisé l IDE Eclipse 3.4 WTP(Web Tools Platform), l un des outils les plus utilisés dans le développement d application Web Java qui est un logiciel libre. Il permet une grande productivité dans le développement grâce à des fonctionnalités telles que la complétion automatique, l intégration de la gestion de fichier Subversion, d un client de serveur de base de données... Afin de compléter ces fonctionnalités nous avons installé deux plugins supplémentaires : JBoss Seam permettant entre autre la création de projet Seam et la complétion automatique dans les Facelets (couche présentation). Mylyn pour la gestion des anomalies via les services Web de Mantis JBoss Application Server JBoss AS est un serveur d applications J2EE libre, publié sous licence GNU LGPL. Etant écrit en Java, ce logiciel peut donc être utilisé sur tout système d exploitation fournissant une machine virtuelle Java (JVM). JBoss Application Server implémente entièrement l ensemble des spécifications Java EE PostgreSQL PostgreSQL est un système de gestion de base de données relationnelle et objet (SGBDRO). C est un outil libre disponible selon les termes d une licence de type BSD. Ce système est concurrent d autres systèmes de gestion de base de données, qu ils soient libres (comme MySQL et Firebird), ou propriétaires (comme Oracle, Sybase, DB2 et Microsoft SQL Server). Comme les projets libres Apache et Linux, PostgreSQL n est pas contrôlé par une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et d entreprises. 23

25 3.4 État de l art Il existe à l heure actuelle des centaines d outils de gestion de contenu dans le monde. Faire un état de l art exhaustif s avérerait donc impossible. C est pourquoi nous vous présentons ici un panel très réduit de ces CMS, en nous focalisant notamment sur les CMS Open Source. Joomla, Typo3, Drupal ou Spip sont aujourd hui d une telle qualité qu aucune offre commerciale ne peut rivaliser. Ils sont tous écrits en PHP et disponibles sous licence GPL. Présentation Joomla! Fig. 3.7 Joomla! Joomla! est un CMS développé à partir du CMS «Mambo». Il a été créé suite à un différent entre les développeurs principaux et la société coordinatrice des développements. Aujourd hui, la majorité des développeurs et de la communauté se consacrent à Joomla!, ce qui fait nettement pencher la balance en sa faveur. Cet outil se démarque principalement par la convivialité de son interface d administration. Le mot d ordre étant de «donner un contrôle total du produit à un non-technicien». Création de pages, catégorisation, recherche, statistiques d accès, urls significatives ainsi que de nombreux modules sont directement intégrés et ne demandent pas de connaissances spécifiques pour leur mise en œuvre. Cependant, Joomla! ne permet pas de gérer différents types de contenus, et ne pourra pas être utilisé lorsqu on aura un besoin fort de structuration des contenus. Ce CMS conviendra parfaitement pour des sites personnels mais pourra également répondre aux besoins de nombreux sites professionnels. 24

26 3.4.2 Spip Fig. 3.8 Spip Spip est un véritable CMS, avec les principales fonctionnalités que l on peut en attendre. À l origine, Spip était principalement utilisé par des internautes pour gérer leur site Web personnel, ou pour des sites d associations, mais Spip a grandi et est maintenant utilisé par des organismes privés ou publics, pour gérer leur site Web professionnel. Spip est un projet Open Source français, et sa communauté peut être qualifiée d active, avec plusieurs versions par an et des centaines voire des milliers de membres. Spip est un des rares CMS à pouvoir prétendre à plusieurs milliers de références à travers le monde. Cette réussite s explique par la simplicité du produit : à la fois la simplicité d utilisation, mais aussi la simplicité de déploiement et d adaptation. En contrepartie, Spip présente quelques limitations sur des fonctionnalités de gestion de contenus, ce qui le limite clairement au monde des outils de gestion de contenus orienté «Web», et non pas «entreprise». Notons par ailleurs que Spip dispose d une interface d administration entièrement multilingue, traduite dans plus de 20 langues, comprenant l arabe, l esperanto, le russe et même le chinois Drupal Fig. 3.9 Drupal Conçu pour être un blog collectif, Drupal trouve aujourd hui des applications très variées : du portail communautaire au site corporate, en passant par l intranet ou encore le site e-commerce. 25

27 La force de ce CMS est son extensibilité. Il accueille très facilement de nombreux modules complémentaires (forum, galerie photos, sondage, formulaire, newsletter, messagerie, chat, enquête, paiement en ligne, calendrier partagé, etc.). Au niveau de la gestion de contenus, Drupal se situe à mi-chemin entre Joomla et ez Publish. Point fort : l interface d administration permet de créer facilement de nouveaux types de contenus structurés. Drupal intègre un système de templates PHP (très flexible), la gestion des droits utilisateurs, le multi positionnement des contenus, ainsi que des fonctionnalités de recherche et de statistiques Typo3 Fig Typo3 Typo3 est le fruit de plusieurs années de travail d un informaticien danois. Le produit est sorti fin 2000, et depuis une communauté très active s est développée, particulièrement dans les pays germaniques. En termes de fonctionnalités prêtes à l emploi, Typo3 est l un des outils les plus riches. Il offre à peu près tout ce que l on peut souhaiter, et cela avec un niveau de finition exceptionnel. Gestion des droits et des contributions, cache, habilitations, gabarits, etc., tout y est, avec peu de limitations. Parmi les fonctionnalités offertes par Typo3 on peut citer la manipulation d images, qui lui permet de redimensionner des images, de créer des vignettes et également de générer dynamiquement des titres en tant qu images. L une des grandes forces de Typo3 réside dans son extensibilité par modules. Un module peut ajouter un ensemble de fonctionnalités à Typo3, mais aussi modifier une fonctionnalité déjà intégrée, sans modifier le code de Typo3, et donc, permet de rester compatible avec les futures versions du CMS. 26

28 3.5 Conception Diagramme de classes Fig Diagramme de classes 27

29 3.5.2 Diagramme d états Fig Diagramme d états 28

30 3.5.3 Pattern état Dans une application Java EE, la classe Article est une classe entité, elle est donc directement utilisée pour récupérer des informations provenant de la base de données. Par conséquent tous ses attributs sont sauvegardés dans la base de données et notamment son état. Ce qui nous amène à sauvegarder des états de manière redondante. Afin de gérer les différents états d un article nous avons choisi d utiliser le modèle de conception «État». Celui-ci permet de déléguer le comportement d un objet dans un autre objet. Fig Pattern état, première version Exemple : Article 1 : Etat : Pending Article 2 : Etat : Submitted Article 3 : Etat : Pending Dans cet exemple Article 1 et Article 2 n ont pas le même état sauvegardé alors que rien ne les différencie. Ainsi nous avons décidé de mieux adapter le modèle à nos besoins en intercalant entre la classe Article et State une énumération StateType. Chaque élément de cette énumération sera composé d un état Singleton lui correspondant. 29

31 Fig Pattern état, deuxième version public enum StateType { DECLINED(Declined.getInstance()), PENDING(Pending.getInstance()), SUBMITTED(Submitted.getInstance()), VALIDATED(Validated.getInstance()); private State objetetat; private StateType(State objetetat) { } this.objetetat = objetetat; } public State getobjetetat() { } return objetetat; Grâce à cette solution, seul le nom de l état sera persistant mais on pourra aussi utiliser dans le code chaque état comme le pattern le préconise grâce à l instruction : a.getetat().getobjetetat().valider(); 30

32 3.5.4 Pattern décorateur Nous avons créé un système de publication indépendant, qui peut être utilisé par tout objet pouvant être publié. Dans notre modélisation, seul un PublishableContent est publiable mais nous pouvons facilement imaginer la publication d une bannière, d un message en page d accueil... Notre première modélisation : Fig Modélisation de la publication, première version PublicationChaînée sert lorsque la publication d un article (resp. d une catégorie) est liée à celle de sa catégorie (resp. de sa section). Ci-dessous un dessin illustrant cette possibilité : Fig Exemple de publication chaînée La première modélisation ne peut être réalisée en Java puisqu elle fait intervenir un héritage multiple. Nous avons donc décidé d utiliser le pattern «Décorateur» afin de le simuler. 31

33 Fig Notre solution : utilisation du pattern décorateur 32

34 3.5.5 Persistance : La majorité des classes du diagramme sont des objets qui sont mémorisés dans la base de données. Afin de réaliser cette persistance nous utilisons la spécification EJB 3 qui simplifie énormément la création d Entity Beans. Elle fournit un modèle de persistance à base de POJO pour le mapping objet/relationnel. Un POJO est une classe contenant des attributs, les getters et setters respectifs ainsi qu un constructeur par défaut. Prenons comme exemple la classe Article : public class Article extends PublishableContent { private String content; private String resume; private StateType state; private Categorie categorie; private Set<Tag> tags = new HashSet<Tag>(); private File logo; private Set<File> attachedfiles = new HashSet<File>(); public Article() { } state = StateType.PENDING; public void setcontent(final String contenu) { } this.content @Basic(fetch=FetchType.LAZY) public String getcontent() { return content; = EnumType.STRING) public final StateType getstate() { return state; } 33

35 } public void setstate(final StateType state) { this.state = state; public void settags(final Set<Tag> tags) { } this.tags = = {CascadeType.MERGE, CascadeType.PERSIST, = "ARTICLE_TAGS", joincolumns = "article_id", referencedcolumnname = "id"), inversejoincolumns = "tag_id", referencedcolumnname = "id")) public Set<Tag> gettags() { return tags; } public void setcategorie(final Categorie categorie) { } this.categorie = = { CascadeType.MERGE, CascadeType.PERSIST, = "categorie_id", referencedcolumnname = "id") public Categorie getcategorie() { return categorie; } public void setlogo(final File logo) { } this.logo = = { CascadeType.ALL = "logo_id", referencedcolumnname = "id") public File getlogo() { return logo; } } 34

36 Paramétrage de l Entity Bean : cette annotation indique que la classe doit être considérée comme un Entity = articles ) : indique le nom de la table qui rassemblera tous les objets. Paramétrer les champs persistants : (Large binary object) permet de sauvegarder le texte de l article qui est de longueur variable et qui peut ne pas contenir de simples chaînes de = EnumType.STRING) : permet de sauvegarder la valeur d une énumération sous forme d une chaîne de caractères. Hibernate, notre fournisseur de persistance, met à notre disposition d autres annotations permettant de gérer les contraintes d intégrité sur les = [a-za- Z]?[a-zA-Z0-9 ]+, message = Le login d un membre doit commencer par une lettre, et contenir seulement des lettres, chiffres ou underscore ) Paramétrer la clé primaire : stipule que l attribut est la clé : s utilise avec l annotation précédente pour mentionner au conteneur d utiliser la meilleure solution pour générer l id. Les champs relationnels : Une entité travaille rarement seule mais est reliée par des relations. Il suffit de créer une propriété dont le type est une entité (cardinalité 1) ou dont le type est un ensemble (cardinalité n) (java.util.collection, java.util.list...). Afin de paramétrer ces relations nous disposons des annotations :@OneToOne, OneToMany, ManyToOne, ManyToMany Nous utilisons par exemple l pour caractériser la relation entre Article et pour la relation entre Article et Catégorie pour la relation «logo» entre Article et File. 35

37 Paramétrer l héritage : L héritage est une notion très utilisée dans le monde objet et sa représentation relationnelle peut être réalisée de plusieurs manières. Nous utilisons ici essentiellement la stratégie «tables jointes» : la classe racine des entités est représentée par une table. Chaque classe fille est liée à sa propre table séparée contenant les propriétés spécifiques de celle-là. La liaison entre les tables «filles» et la table racine se fait via les clés primaires. Exemple de l héritage entre Article et = InheritanceType.JOINED) public class PublishableContent implements Serializable {... } Optimisation : L attribut d annotation «fetch» paramétré à «FetchType.LAZY» permet de mentionner qu une propriété sera chargée à la demande, ceci s avère très utile pour le chargement d images ou du texte d un article. 36

38 3.6 Réalisation Authentification avec Seam Seam et son API de sécurité fournit une multitude de fonctionnalités liées à la sécurité des applications basées sur Seam, couvrant des domaines tels que : Authentification - une couche authentification (extensible) basée sur JAAS qui permet aux utilisateurs de s authentifier sur tout fournisseur de sécurité. Identity Management - une API pour la gestion d une application Seam, les utilisateurs et les rôles à l exécution. Support pour le captcha : prévenir les softwares automatisés tentant d abuser de votre application Seam. Les fonctionnalités d authentification fournies par Seam sont basées sur JAAS (Java Authentification et Autorisation du Service), et en tant que telles fournissent une robuste et hautement configurable API pour la manipulation d authentification des utilisateurs. L étude approfondie de la documentation Seam nous a amené à faire un choix; soit faire notre propre composant d authentification grâce à la couche basée sur JAAS, soit utiliser les fonctionnalités proposées par l IdentityManager, plus difficile à mettre en œuvre mais proposant une plus grande robustesse grâce à son détachement. En effet grâce aux différents fichiers de configuration il est possible de rendre ce composant indépendant en fournissant les classes correspondant aux Users (utilisateurs) et aux Roles (rôles attribués aux utilisateurs de l application). Nous nous sommes donc tournés vers cette deuxième option étant donné les demandes de IOcean qui souhaitait pouvoir rendre ce CMS adaptable suivant les différents clients. Identity Management fournit une API standard pour la gestion des rôles et des utilisateurs d une application Seam, quel que soit l IdentityStore utilisé (bd, LDAP,etc...). Au centre de l API de gestion des identités est la composante IdentityManager, qui fournit toutes les méthodes pour : créer, modifier et supprimer des utilisateurs. octroyer et retirer des rôles. changer les mots de passe. activer et désactiver des comptes d utilisateur. authentifier des utilisateurs et récupérer la liste des utilisateurs et des rôles. 37

39 Avant une utilisation concrète, l IdentityManager doit d abord être configuré avec un ou plusieurs IdentityStores. Ces composants font le travail réel d interagir avec le backend du fournisseur de sécurité, que ce soit une base de données, serveur LDAP, ou autre chose. Fig Processus d identification Configuration IdentityManager Seam fournit directement deux implémentations de IdentityStore. Tout d abord, JpaIdentityStore utilise une base de données relationnelle pour stocker des utilisateurs et leurs rôles, et c est cet IdentityStore qui est utilisé par Seam. L autre implémentation qui est fournie est LdapIdentityStore, qui utilise un annuaire LDAP pour stocker des utilisateurs et des rôles. Il y a deux propriétés configurables pour la composante IdentityManager : IdentityStore et roleidentitystore. La valeur de ces attributs doit être une expression EL se référant à une mise en œuvre de la composante Seam IdentityStore interface. Si rien n est configuré, JpaIdentityStore sera pris en charge par défaut. L exemple suivant configure l IdentityManager pour utiliser un LdapIdentityStore pour les opérations liées à l utilisateur, et JpaIdentityStore rôle pour les opérations liées aux rôles : <security:identity-manager identity-store="#{ldapidentitystore}" role-identity-store="#{jpaidentitystore}"/> Notre choix s est porté sur le JpaIdentityStore qui répondait mieux à nos contraintes. Cet IdentityStore permet de stocker des utilisateurs et des rôles dans une base de données relationnelle. Il est conçu pour être le plus possible sans restriction en matière de schéma de base de données, qui permet une grande souplesse dans la structure des tables sous-jacentes. Ce résultat est obtenu grâce à l utilisation d un ensemble d annotations spéciales, permettant à une entité bean d être configurée pour stocker des tuples d utilisateurs et de rôle. 38

40 Configuration JpaIdentityStore Le JpaIdentityStore exige que les propriétés user-class et role-class soient configurées. Ces propriétés doivent se référer aux classes entités utilisées pour stocker des utilisateurs et les rôles. L exemple suivant montre la configuration de components.xml dans notre TER : <security:jpa-identity-store user-class="tercmsseam.entity.usercms" role-class="tercmsseam.entity.rolecms" /> Configuration Entités Des annotations spéciales sont utilisées pour configurer les beans entité pour le stockage des utilisateurs et des rôles. Le tableau suivant indique chacune des annotations, et leur description. Annotations Statut Requis Marque l attribut ou la méthode contenant le login d Requis Marque l attribut ou la méthode contenant le mot de passe de l utilisateur. Elle permet l utilisation d un algorithme de hachage à préciser pour le hachage du mot de passe. Les options possibles pour le hachage sont MD5, SHA et Optionnel Marque l attribut ou la méthode contenant le nom de l Optionnel Marque l attribut ou la méthode contenant le prénom de l Optionnel Marque l attribut ou la méthode contenant la valeur booléenne correspondant à l activation du compte de l Requis Marque l attribut ou la méthode contenant les rôles de l utilisateur. Tab. 3.2 Annotations portant sur l utilisateur 39

41 Annotations Statut Requis Marque l attribut ou la méthode contenant le nom du Optionnel Marque l attribut ou la méthode contenant le groupe membre du Optionnel Marque l attribut ou la méthode indiquant si le rôle est conditionnel ou pas. Tab. 3.3 Annotations portant sur le rôle Ce tableau n est pas exhaustif et propose les méthodes les plus utilisées lors de notre développement. Voici comme exemple ce qui se passe à la fin de la validation de notre formulaire de création d un utilisateur de la partie publique (en supposant que toutes les valeurs demandées soient correctes) : new RunAsOperation() { public void execute() { identitymanager.createuser(username, password); identitymanager.grantrole(username, "userfront"); } }.addrole("admin").run(); Nous utilisons dans cette portion de code le rôle admin car pour des raisons de sécurité nous ne pouvons pas permettre toutes les actions suivant les rôles. Le code suivant fournit une liste exemple des règles de sécurité qui accordent l accès à toutes les actions liées à la gestion des identités pour les membres ayant le rôle admin. Elles sont énoncées dans le fichier security.drl contenu dans le répertoire resources. package Permissions; dialect mvel import java.security.principal; import org.jboss.seam.security.permission.permissioncheck; import org.jboss.seam.security.permission.rolecheck; import org.jboss.seam.security.role; 40

42 rule ManageUsers no-loop activation-group "permissions" when check: PermissionCheck(name == "seam.user", granted == false) Role(name == "admin") then check.grant(); end rule ManageRoles no-loop activation-group "permissions" when check: PermissionCheck(name == "seam.role", granted == false) Role(name == "admin") then check.grant(); end; On peut donc modifier ce fichier pour obtenir les règles de sécurité désirées. Pour les restrictions on peut aussi utiliser le fichier pages.xml dans resources/meta-inf afin de paramétrer les accès suivant les rôles. Voici un exemple avec la page d accueil de la partie privée seulement accessible aux personnes ayant un rôle admin ou userback. <!-- Restriction d accès --> <page view-id="/homebackoff.xhtml" login-required="true"> <restrict>#{s:hasrole( userback ) or s:hasrole( admin )}</restrict> <navigation from-action="#{identity.logout}"> <redirect view-id="/login.xhtml" /> </navigation> </page> 41

43 Ajout d un captcha Lors de la création d un nouveau compte par le biais de notre formulaire nous avons décidé d utiliser une des fonctionnalités de Seam pour lutter contre l automatisation de ceux-ci. Seam fournit un algorithme de captcha permettant de prévenir contre les processus automatisés interagissant avec notre application. Après avoir configuré le captcha servlet (dans le fichier web.xml) fournissant les images utilisées pour les tests, il nous suffit d ajouter quelques lignes pour le faire fonctionner. <h:outputlabel for="verifycaptcha"> <h:graphicimage value="/seam/resource/captcha"/><em>*</em> </h:outputlabel> <h:panelgroup> <h:inputtext styleclass="inputtext" id="verifycaptcha" value="#{captcha.response}" required="true"/> <h:message styleclass="validationerror" for="verifycaptcha"/> </h:panelgroup> C est tout ce qu il y a à faire. La balise graphicimage affiche le captcha à vérifier et la balise inputtext reçoit la réponse de l utilisateur. Celle-ci est automatiquement comparée au captcha quand le formulaire est validé Formulaire d ajout d un article Dans le formulaire de création d un article nous voulions que lors d un clic sur une catégorie dans le menu déroulant la case à cocher «privé» soit mise à jour automatiquement. En effet, si nous choisissons d ajouter un article dans une catégorie privée il est normal que l article le soit aussi. Pour réaliser cette fonctionnalité il est nécessaire de réaliser une requête AJAX (Asynchronous JavaScript and XML) à chaque changement de catégorie. AJAX nous donne la possibilité, depuis une page Web, d effectuer un appel d une fonction de notre application, et de ne mettre à jour qu une partie de la page avec le résultat du programme - et non l intégralité de la page. Seam remoting met à notre disposition une librairie JavaScript ainsi qu une annotation permettant de mentionner quelle fonction est accessible à distance. 42

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

Joomla! Création et administration d'un site web - Version numérique

Joomla! Création et administration d'un site web - Version numérique Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique

Plus en détail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Introduction aux concepts d ez Publish

Introduction aux concepts d ez Publish Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO) LDAP Mise en place Introduction Limitation et Sécurité Déclarer un serveur MySQL dans l annuaire LDAP Associer un utilisateur DiaClientSQL à son compte Windows (SSO) Créer les collaborateurs DiaClientSQL

Plus en détail

SITE WEB E-COMMERCE ET VENTE A DISTANCE

SITE WEB E-COMMERCE ET VENTE A DISTANCE Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

Introduction à. Oracle Application Express

Introduction à. Oracle Application Express Introduction à Oracle Application Express Sommaire Qu est-ce que Oracle Application Express (APEX)? Vue d ensemble des fonctionnalités et des différents composants d Oracle APEX Démonstration de création

Plus en détail

Refonte front-office / back-office - Architecture & Conception -

Refonte front-office / back-office - Architecture & Conception - Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table

Plus en détail

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Comparatif CMS Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Sommaire Introduction : Dans le cadre de notre projet de master première année, il nous a été demandé de développer un moteur de recherche

Plus en détail

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO) LDAP Mise en place Introduction Limitation et Sécurité Déclarer un serveur MySQL dans l annuaire LDAP Associer un utilisateur DiaClientSQL à son compte Windows (SSO) Créer les collaborateurs DiaClientSQL

Plus en détail

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x WysiUpStudio CMS professionnel pour la création et la maintenance évolutive de sites et applications Internet V. 6.x UNE SOLUTION DE GESTION DE CONTENUS D UNE SOUPLESSE INÉGALÉE POUR CRÉER, MAINTENIR ET

Plus en détail

Cursus 2013 Déployer un Content Management System

Cursus 2013 Déployer un Content Management System Cursus 2013 Déployer un Content Management System Les critères d évaluation d un CMS Les utilisateurs, après examen de la taille de la base d utilisateurs en France. La communauté, selon son dynamisme

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

CMS Open Source : état de l'art et méthodologie de choix

CMS Open Source : état de l'art et méthodologie de choix CMS Open Source : état de l'art et méthodologie de choix Définition d'un CMS (wikipedia) Les CMS sont une famille de logiciel de conception et de mise à jour dynamique de sites web partageant les fonctionnalités

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN

Plus en détail

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Avant-propos L économie en réseau, ou la netéconomie, est au cœur des débats et des stratégies de toutes les entreprises. Les organisations, qu il s agisse de

Plus en détail

1. Installation d'un serveur d'application JBoss:

1. Installation d'un serveur d'application JBoss: EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

Découvrir le CMS. et l utiliser dans une approche pro!

Découvrir le CMS. et l utiliser dans une approche pro! Découvrir le CMS et l utiliser dans une approche pro! Cyril THIBOUT Pulsar Informatique SARL créée en 2005 12 personnes www.pulsar-informatique.com Qu est-ce que Joomla? Un des meilleurs CMS opensource

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

En date du 11 décembre 2008

En date du 11 décembre 2008 R E F O N T E S I T E W E B G F I E CAHIER DES CHARGES ET DEVIS En date du 11 décembre 2008 ADITEL - WEB AGENCY 4 RUE CAROLINE 75017 PARIS Tel 01 44 70 02 77 SARL AU CAPITAL DE 20 000 EUROS R.C.S BOBIGNY

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

Formation : Langues : Types d Intervention et Secteurs d Activité :

Formation : Langues : Types d Intervention et Secteurs d Activité : Ismail HACHOUM 142, Rue Georges Pompidou, 59110 La Madeleine - FRANCE Email : ismail.hachoum@gmail.com Tél: +33(0) 650 198 937 27 ans - Marié Permis B Ingénieur Etudes et Développement Java/JEE Formation

Plus en détail

Mercredi 15 Janvier 2014

Mercredi 15 Janvier 2014 De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est

Plus en détail

REQUEA. v 1.0.0 PD 20 mars 2008. Mouvements d arrivée / départ de personnels Description produit

REQUEA. v 1.0.0 PD 20 mars 2008. Mouvements d arrivée / départ de personnels Description produit v 1.0.0 PD 20 mars 2008 Mouvements d arrivée / départ de personnels Description produit Fonctionnalités L application Gestion des mouvements d arrivée / départ de Requea permet la gestion collaborative

Plus en détail

Catalogue Formations Jalios

Catalogue Formations Jalios Catalogue Formations Jalios Offre de services Jalios 23/04/2015-6.0 1 / 19 Sommaire Sommaire... 2 1. Introduction... 3 2. Jalios, organisme de formation... 4 3. Formations fonctionnelles... 5 3.1. Formation

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

Introduction MOSS 2007

Introduction MOSS 2007 Introduction MOSS 2007 Z 2 Chapitre 01 Introduction à MOSS 2007 v. 1.0 Sommaire 1 SharePoint : Découverte... 3 1.1 Introduction... 3 1.2 Ce que vous gagnez à utiliser SharePoint... 3 1.3 Dans quel cas

Plus en détail

UE 8 Systèmes d information de gestion Le programme

UE 8 Systèmes d information de gestion Le programme UE 8 Systèmes d information de gestion Le programme Légende : Modifications de l arrêté du 8 mars 2010 Suppressions de l arrêté du 8 mars 2010 Partie inchangée par rapport au programme antérieur Indications

Plus en détail

Comment déployer l'active Directory sur Windows Server 2008 R2. Microsoft France Division DPE

Comment déployer l'active Directory sur Windows Server 2008 R2. Microsoft France Division DPE Comment déployer l'active Directory sur Windows Server 2008 R2 Microsoft France Division DPE 1 Table des matières Présentation... 3 Objectifs... 3 Pré requis... 3 Introduction à l Active Directory... 4

Plus en détail

L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités

L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités Bureau Virtuel L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités Que ce soit par la communication, par les échanges ou par la collaboration,

Plus en détail

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons

Plus en détail

Drupal (V7) : principes et petite expérience

Drupal (V7) : principes et petite expérience Drupal (V7) : principes et petite expérience Jean-Luc Archimbaud CNRS/Mathdoc http://jl.archimbaud.free.fr/ Présentation journées Mathrice 10 oct 2012 V1.2 Corrigez mon discours ou complétez... Licence

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

Plus en détail

Webinar. Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL. avec la participation de

Webinar. Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL. avec la participation de En partenariat avec Webinar Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL avec la participation de 19 mars 2013 Qui sommes-nous? INTRODUCTION

Plus en détail

Tour d horizon des CMS. Content Management System

Tour d horizon des CMS. Content Management System Tour d horizon des CMS Content Management System Qu est ce qu un CMS? C est un Sytème de gestion de contenus Gestion dynamique de contenus en ligne Contenus suivant les standards du web Séparation du contenu,

Plus en détail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.

Plus en détail

Projet en nouvelles technologies de l information et de la communication

Projet en nouvelles technologies de l information et de la communication Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima

Plus en détail

Créateur de sites Internet. Développeur de logiciels. www.logipro.com

Créateur de sites Internet. Développeur de logiciels. www.logipro.com Créateur de sites Internet Développeur de logiciels Logipro, partenaire de vos «e projets» depuis 1997 Fort d une dizaine d années d expériences dans le développement de solutions Internet globales, Logipro

Plus en détail

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Table des matières Avant-propos................................................ 1 Quel est l objectif de cet ouvrage?............................. 4 La structure

Plus en détail

1. Des chartes graphiques homogènes, élégantes, créatives

1. Des chartes graphiques homogènes, élégantes, créatives Comment sont résolues des difficultés rencontrées par les sites de première génération? Comment faire vivre facilement des sites élégants, réactualisés, à contenu riche, et aux fonctionnalités évolutives?

Plus en détail

Catalogue des Formations Techniques

Catalogue des Formations Techniques Catalogue des Formations Techniques Items Média Concept 4, allées Pierre-Gilles de Gennes - 33700 Mérignac Téléphone : 05.57.35.73.73 Télécopie : 05.57.35.73.70 Courriel : contact@imc-fr.com 2 Préambule

Plus en détail

Visual Paradigm Contraintes inter-associations

Visual Paradigm Contraintes inter-associations Visual Paradigm Contraintes inter-associations Travail de Bachelor d'informaticien de gestion Partie C Présentation de Visual Paradigm 1 Présentation de Visual Paradigm For UML L objet du travail de Bachelor

Plus en détail

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information. PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Quel ENT pour Paris 5?

Quel ENT pour Paris 5? Quel ENT pour Paris 5? Objectifs et Enjeux Contexte et ob jectifs du projet Objectifs Mettre à disposition des usagers de l établissement (étudiants, personnels, partenaires, contacts, internautes) : un

Plus en détail

WordPress : principes et fonctionnement

WordPress : principes et fonctionnement CHAPITRE 1 WordPress : principes et fonctionnement WordPress est à l origine un outil conçu pour tenir un blog, c est-à-dire un journal ou carnet de bord en ligne. Mais il a évolué pour devenir un système

Plus en détail

1 JBoss Entreprise Middleware

1 JBoss Entreprise Middleware 1 JBoss Entreprise Middleware Les produits de la gamme JBoss Entreprise Middleware forment une suite de logiciels open source permettant de construire, déployer, intégrer, gérer et présenter des applications

Plus en détail

Votre infrastructure est-elle? La collaboration informatique. améliore la performance globale

Votre infrastructure est-elle? La collaboration informatique. améliore la performance globale Votre infrastructure est-elle? La collaboration informatique améliore la performance globale Des processus automatisés Travail isolé ou processus de groupe : où en êtes-vous? Le travail en équipe a toujours

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

LE CONCEPT DU CMS CHAPITRE 1

LE CONCEPT DU CMS CHAPITRE 1 CHAPITRE 1 LE CONCEPT DU CMS Techniques traditionnelles de construction de sites... 14 Les principes des CMS... 18 Le langage HTML... 26 Check-list... 41 11 Même s il est d usage de comparer Internet

Plus en détail

Formation en Logiciels Libres. Fiche d inscription

Formation en Logiciels Libres. Fiche d inscription République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)

Plus en détail

Messagerie & Groupeware. augmentez l expertise de votre capital humain

Messagerie & Groupeware. augmentez l expertise de votre capital humain Messagerie & Groupeware augmentez l expertise de votre capital humain OUTLOOK 2010* Etude des fonctionnalités d un logiciel de messagerie Tout public 1 journée MG01 Maîtrise de l environnement Windows

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite?

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite? Menu du jour Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite? Le web comment ça marche? - Internet le réseau des réseaux. Un peu d'histoire. - adresse IP : numéro

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

Plus en détail

IBM DB2 Alphablox. d administration GC11-2170-00

IBM DB2 Alphablox. d administration GC11-2170-00 IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 ii IBM DB2 Alphablox - Guide d administration Table des matières Avis

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

PHP 5. avancé. 3 e édition. Eric Daspet. Cyril Pierre de Geyer. Préface de Damien Seguy

PHP 5. avancé. 3 e édition. Eric Daspet. Cyril Pierre de Geyer. Préface de Damien Seguy PHP 5 avancé 3 e édition Eric Daspet Cyril Pierre de Geyer Préface de Damien Seguy Annexe Ressources en ligne Une des grandes forces de PHP réside dans la multitude et la diversité des applications existantes.

Plus en détail

Content Management System V.3.0. BlackOffice CMS V3.0 by ultranoir 1

Content Management System V.3.0. BlackOffice CMS V3.0 by ultranoir 1 Content Management System V.3.0 BlackOffice CMS V3.0 by ultranoir 1 SOMMAIRE Introduction Grands principes de fonctionnement Description des modules Références principales BlackOffice CMS V3.0 by ultranoir

Plus en détail

LES SOLUTIONS OPEN SOURCE RED HAT

LES SOLUTIONS OPEN SOURCE RED HAT LES SOLUTIONS OPEN SOURCE RED HAT Red Hat, le fournisseur leader Linux et de l open source mondial a son siège à Raleigh, en Caroline du Nord, avec des bureaux dans le monde entier. Red Hat propose les

Plus en détail

Description de la maquette fonctionnelle. Nombre de pages :

Description de la maquette fonctionnelle. Nombre de pages : Description de la maquette fonctionnelle Nombre de pages : 22/07/2008 STATUT DU DOCUMENT Statut Date Intervenant(s) / Fonction Provisoire 22/07/2008 Approuvé Validé HISTORIQUE DES MODIFICATIONSICATIONS

Plus en détail

Mise en place Active Directory / DHCP / DNS

Mise en place Active Directory / DHCP / DNS Mise en place Active Directory / DHCP / DNS Guillaume Genteuil Période : 2014 Contexte : L entreprise Diamond Info localisé en Martinique possède une cinquantaine de salariés. Basé sur une infrastructure

Plus en détail

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09 INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL

Plus en détail

ENVOLE 1.5. Calendrier Envole

ENVOLE 1.5. Calendrier Envole ENVOLE 1.5 Calendrier Envole RSA FIM 1 avril 2008 V 1.13 sur EOLE V 2.0 1 septembre 2008 EOLE V 2.1 10 octobre 2008 V 1.15 RC sur EOLE V 2.0 Modification du SSO EOLE 2.2 (PAM-CAS, CT EOLE V 2.2 RC Prise

Plus en détail

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet Echosgraphik Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet Présentation I. Echosgraphik Protocoles de travail I. Développement du site II.

Plus en détail

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE Igor Rosenberg 30 ans DEA «Image-Vision» de l Université de Nice Sophia-Antipolis POSTES PRECEDENTS MMA: Développement Web/Grails sur démonstrateur

Plus en détail

INTRODUCTION AU CMS MODX

INTRODUCTION AU CMS MODX INTRODUCTION AU CMS MODX Introduction 1. Créer 2. Organiser 3. Personnaliser UNE PETITE INTRODUCTION QUEST-CE QU UN CMS? CMS est l acronyme de Content Management System. C est outil qui vous permet de

Plus en détail

Cahier des charges - Refonte du site internet www.sciencespo- rennes.fr

Cahier des charges - Refonte du site internet www.sciencespo- rennes.fr Cahier des charges Refonte du site internet www.sciencesporennes.fr Procédure d achat conformément à l article 28 alinéa I du Code des marchés publics 1. Présentation de la structure Reconnu pour son excellence

Plus en détail

EJBCA PKI. Yannick Quenec'hdu Reponsable BU sécurité

EJBCA PKI. Yannick Quenec'hdu Reponsable BU sécurité EJBCA PKI Yannick Quenec'hdu Reponsable BU sécurité EJBCA EJBCA est une PKI (Public Key infrastructure) ou IGC (Infrastructure de gestion de clés) sous licence OpenSource (LGPL) développée en Java/J2EE.

Plus en détail

Imaginez un Intranet

Imaginez un Intranet Imaginez un Intranet clé en main et économique, adapté à vos besoins! Connectikup : Votre solution intranet/extranet/portail collaboratif Vous avez besoin de partager, organiser, synchroniser et sécuriser

Plus en détail

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une

Plus en détail

http://www.alfresco.com/fr/community/register/?source=docs Extensions, Documentation, Tutoriels, Astuces

http://www.alfresco.com/fr/community/register/?source=docs Extensions, Documentation, Tutoriels, Astuces Maryem Rhanoui 2013 Alfresco Liens utiles Le site Alfresco : http://www.alfresco.com/fr/ Le Portail Content Community http://www.alfresco.com/fr/community/register/?source=docs Extensions, Documentation,

Plus en détail

Un serveur d'archivage

Un serveur d'archivage Un serveur d'archivage destiné au Service Commun de Documentation de l'université de la Méditerranée Encadrement : Noël Novelli Représentants client (S.C.D.) : Axelle Clarisse Ronan Lagadic Equipe Projet

Plus en détail

SITE I NTERNET. Conception d un site Web

SITE I NTERNET. Conception d un site Web SITE I NTERNET Conception d un site Web Conception de votre site Web Préambule Ce document a pour but de donner une méthode de travail afin de réaliser dans les meilleures conditions un site internet.

Plus en détail

Installation / Sauvegarde Restauration / Mise à jour

Installation / Sauvegarde Restauration / Mise à jour Installation / Sauvegarde Restauration / Mise à jour SPIP version 1.8.x Serveur (Linux) Jean Sébastien BARBOTEU dev.jsb@laposte.net Introduction Nous allons aborder tous les aspects techniques liés à la

Plus en détail

EJBCA Le futur de la PKI

EJBCA Le futur de la PKI EJBCA Le futur de la PKI EJBCA EJBCA c'est quoi? EJBCA est une PKI (Public Key infrastructure) ou IGC (Infrastructure de gestion de clés) sous licence OpenSource (LGPL) développée en Java/J2EE. EJBCA bien

Plus en détail

E.N.T. Espace Numérique de Travail

E.N.T. Espace Numérique de Travail E.N.T. Espace Numérique de Travail Portail de l UM2 Outil de communication, de partage, de stockage, Présentation et Modalités d utilisation Page 1 sur 20 Sommaire I. Présentation du portail 3 A. Le concept

Plus en détail

Service d'authentification LDAP et SSO avec CAS

Service d'authentification LDAP et SSO avec CAS Service d'authentification LDAP et SSO avec CAS Clé de l'extension : ig_ldap_sso_auth 2006-2007, Michaël Gagnon, Ce document est publié sous la licence open source, disponible au

Plus en détail

Un site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012

Un site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012 Un site web collaboratif avec Drupal Judith Hannoun - Journées INSHS 16 Octobre 2012 Site web Ensemble de pages en html Des liens hypertextes Une base de données si site dynamique Une interface graphique

Plus en détail

COMMUNICATION TECHNIQUE N TCV060 Ed. 01. OmniVista 4760 Nb de pages : 18 Date : 12-07-2005 URGENTE NON URGENTE TEMPORAIRE DEFINITIVE

COMMUNICATION TECHNIQUE N TCV060 Ed. 01. OmniVista 4760 Nb de pages : 18 Date : 12-07-2005 URGENTE NON URGENTE TEMPORAIRE DEFINITIVE COMMUNICATION TECHNIQUE N TCV060 Ed. 01 OmniVista 4760 Nb de pages : 18 Date : 12-07-2005 URGENTE NON URGENTE TEMPORAIRE DEFINITIVE OBJET : GESTION ANNUAIRE Veuillez trouver ci-après une documentation

Plus en détail

Présentation Alfresco

Présentation Alfresco Présentation d un CMS : Alfresco Présentation Alfresco Ludovic Plantin, Frédéric Sénèque, Xu Zhao Polytech Grenoble Décembre 2008 Plantin, Sénèque, Xu (Polytech) Présentation Alfresco Décembre 2008 1 /

Plus en détail

Cahier des charges : gestion de projets agiles. Programmation d Algorithmes Distribués (PAD)

Cahier des charges : gestion de projets agiles. Programmation d Algorithmes Distribués (PAD) Cahier des charges : gestion de projets agiles Programmation d Algorithmes Distribués (PAD) Benoit Bernardin Rachid Bouherrou Bruno Juillard Kaba Kabinè Sid-ahmed Anouar Lekhal 2012 / 2013 Sommaire I.

Plus en détail

Auto-évaluation Aperçu de l architecture Java EE

Auto-évaluation Aperçu de l architecture Java EE Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU

Plus en détail

EJBCA PKI Open Source

EJBCA PKI Open Source PKI Open Source http://www.auditiel.fr/docs/installation.pdf 1 SOMMAIRE 1Sommaire... 2 2Introduction... 3 2.1Pré requis...3 2.2Versions... 3 2.3Glossaire...3 3Installation...4 3.1Composants nécessaires...

Plus en détail

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013 Rapport de stage Création d un site web Stage du 20/01/2013 au 21/02/2013 Auteur : Antoine Luczak Tuteur professionnel : M. Tison Tuteur scolaire : Mme Girondon Année scolaire : 2013/2014 1 Table des matières

Plus en détail

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies

Plus en détail

Construction d un Site Internet Dynamique avec Joomla René-Yves Hervé, Ph.D.

Construction d un Site Internet Dynamique avec Joomla René-Yves Hervé, Ph.D. Construction d un Site Internet Dynamique avec Joomla René-Yves Hervé, Ph.D. TABLE DES MATIÈRES I. Présentation de Joomla II. III. IV. Documents disponibles Installation de Joomla 3.1) Installation sur

Plus en détail