Jahia CMS ET Portal Version 5.0

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

Download "Jahia CMS ET Portal Version 5.0"

Transcription

1 Jahia CMS ET Portal Version 5.0 Développer un portlet JSR168 Avec Jahia CMS et Portal Version 5.0 V.1 Français Jahia Ltd Suisse 9, route des jeunes 1227 Carouge

2 p. 2/47 TERMES ET CONDITIONS D UTILISATION Copyright 2003/2004 Jahia Ltd. (http://www.jahia.org). Tous droits réservés. CETTE DOCUMENTATION EST UN ÉLÉMENT DU LOGICIEL JAHIA. EN INSTALLANT JAHIA, VOUS RECONNAISSEZ ACCEPTER SANS RÉSERVE LES CONDITIONS D UTILISATION DE LA LICENCE DU LOGICIEL JAHIA (JAHIA COLLABORALITVE SOURCE LICENSE ou JCSL) POUR CONSULTER LA LICENCE : SI VOUS N ACCEPTEZ PAS LES CONDITIONS D UTILISATION, N INSTALLEZ PAS LE LOGIGIEL JAHIA SUR VOTRE ORDINATEUR. Copyright 2007 Jahia Ltd. (http://www.jahia.org). Tous droits réservés.

3 p. 3/47 PREFACE JAHIA joue le rôle de portail Internet et de système de gestion de contenu destiné aux entreprises (CMS and Enterprise Portal). Entièrement écrit en Java J2EE, JAHIA tourne d'origine sur un serveur Tomcat, mais peut être utilisé avec d autres serveurs d applications comme WebSphere d'ibm. L une des caractéristiques principales de JAHIA est de permettre l intégration d applications Web appelées «portlets». Ce manuel décrit comment développer un portlet JSR168 pour JAHIA. Chapitre 1 : Introduction au développement de portlets. Ce chapitre présente les définitions et les notions importantes relatives au développement de portlets JAHIA. Chapitre 2 : Développer un portlet de base. Ce chapitre présente un exemple de portlet simple, appelé HelloWorld! Chapitre 3 : Développer un portlet avancé. Ce chapitre présente un exemple de portlet avancé. Chapitre 4 : Portlets, frameworks et ponts. Chapitre 5 : Migrer des JahiaWebApp vers des portlets. Ce chapitre présente des techniques permettant de convertir une JahiaWebApp (portlet Jahia 4) en portlet JSR168 (portlet Jahia 5). Chapitre 6 : Liens utiles. Ce chapitre présente des liens utiles pour la communauté JSR168. CONVENTIONS UTILISEES DANS CE DOCUMENT Ce document utilise les conventions suivantes : L italique est utilisé pour les : commentaires La chasse fixe est utilisée pour les : exemples de codes JAVA, HTML, JSP. Astuces et suggestions Notes Mises en garde Ce document a été rédigé pour être le plus précis possible. Cependant, de nouvelles fonctionnalités peuvent être disponibles pour les versions de JAHIA les plus récentes.

4 p. 4/47 TABLE DES MATIERES Préface...3 Table des matières...4 Chapitre 1 : Introduction au développement de portlets Définitions Norme et API JSR Jahia et portlet JSR Chapitre 2 : Développer un portlet de base Introduction Classe HelloWorldPortlet Fichier portlet.xml Fichier web.xml Déploiement Visualisation Chapitre 3 : Développer un portlet avancé Introduction Classe HelloPortlet Fichier portlet.xml Et ensuite? Chapitre 4 : Portlets, frameworks et ponts Introduction Framework Struts Framework JSF Autres ponts : PHP, PERL, etc Chapitre 5 : Migrer des JahiaWebApp vers des portlets Introduction Pont JahiaWebAppPortlet Utiliser les frameworks standard Convertir le code java et jsp Ajouter le fichier jahia.xml Chapitre 6 : Liens utiles Portlets Open Source Listes de diffusion Bibliothèques utiles... 45

5 p. 5/47 Chapitre 6 : Conclusion...46

6 p. 6/47 CHAPITRE 1 : INTRODUCTION AU DEVELOPPEMENT DE PORTLETS Ce chapitre présente différentes définitions et notions importantes relatives au développement de portlets JAHIA. 1 DEFINITIONS 1.1 CMS ET PORTAIL Les systèmes de gestion de contenu (Content Management System ou CMS) sont des outils informatiques dédiés à l édition et l organisation de textes, d'informations, de rapports et d éléments multimédia dans un système d information. Les CMS assurent les services suivants : édition commune de contenus par diverses personnes décentralisées (collaboration) mise en place de processus de gestion du contenu (workflow) impossibilité de manipulation par des personnes n en ayant pas l autorisation (sécurité) gestion des révisions (statistiques, gestion des versions) possibilité de décider quand l'information doit être publiée (planification) présentation dans le bon format (gabarits) publication sur différents sites (syndication) affichage différencié en fonction du visiteur (personnalisation) diffusion du contenu sur différents médias (omnimedia) Un portail est un CMS exclusivement orienté Internet avec des capacités d'intégration de contenus provenant de sources extérieures, dans un environnement informatique distribué (bases de données, intégration XML, XLS, etc.). En outre, les portails offrent en général aux utilisateurs finaux des fonctions simples de recherche et de publication sur le Web. Les portails peuvent être utilisés par des sociétés entières (par exemple, Jahia Solutions), ou par des départements tels que le Marketing, les Ressources humaines ou les Ventes. Les portails, sous forme de tableaux de bord interactifs personnalisés, peuvent aussi être utilisés par des utilisateurs individuels. JAHIA joue le rôle de portail Internet et de système de gestion de contenu destiné aux entreprises (CMS et Enterprise Portal).

7 p. 7/ PORTLET Les portlets sont des composants réutilisables intégrés à un portail d'entreprise. Ils permettent à un utilisateur de disposer, depuis la même fenêtre, d'un accès centralisé et convivial à différentes ressources (données, applications, sites Web, etc.), de modifier l'interface du portail selon ses besoins et de personnaliser ainsi son environnement de travail. Les portlets facilitent ainsi l accès aux informations intéressant un groupe d utilisateurs. D un point de vue technique, les portlets sont des applications qui génèrent des portions actives et dynamiques de HTML aggrégées par le portail. Illustration 1 : Exemple de pages JAHIA avec des portlets Afin de permettre l interopérabilité des différents portails, la communauté internationale Java (JCP, Java Community Process) a spécifié le comportement d un portlet pour tous les aspects qui le définissent : agrégation, personnalisation, présentation et sécurité. Le résultat de ce travail a abouti en août 2003, en donnant lieu à la spécification JSR 168 (Java Specification Request) qui définit l API de portlet, et que doivent à termes respecter tous les portails Java au monde, qu ils soient à vocation libre ou commerciale. Cette spécification est brièvement présentée au chapitre suivant. Vous retrouverez l intégralité du texte définissant la norme JSR168 à l adresse :

8 p. 8/47 JAHIA 5 intègre le portail Open Source Jetspeed 2 et est compatible avec la norme JSR168. Pour obtenir plus d informations sur Jetspeed 2, connectez-vous sur : JAHIA 5 supporte également un autre type de portlets : les JahiaWebApp. Celles-ci sont spécifiques à JAHIA et compatibles avec JAHIA 4. Pour obtenir plus d informations sur les JahiaWebApp, consultez le PDF disponible à l adresse : Dans un objectif de compatibilité totale avec la norme portlet, les versions futures de JAHIA ne supporteront pas les JahiaWebApp. Pour cette raison, nous vous conseillons de développer des portlets JSR168 et non des JahiaWebApp pour JAHIA 5, et de convertir vos JahiaWebApps en portlets JSR168 lors de la migration de JAHIA 4 vers JAHIA PREREQUIS Ce manuel suppose que vous êtes familier avec : le language Java la norme Servlet, spécialement les servlets http Apache Tomcat HTML, XML Javascript, JSP et taglib le modèle de contenu Jahia 2 NORME ET API JSR PORTAIL Un portail (JAHIA) est une application Web qui assure généralement les fonctions de personnalisation, d administration centralisée (single sign-on), d agrégation de contenu à partir de différentes sources et de prise en charge de la couche de présentation des systèmes d information. L agrégation se définit comme l action d intégrer du contenu provenant de différentes sources au sein d une même page Web. Un portail peut comporter un ensemble de portlets pour la création de contenu pour différents utilisateurs.

9 p. 9/ PORTLET Les portlets sont des composants Web réutilisables, contrôlés par un conteneur de portlet, et qui traitent des requêtes et produisent du contenu dynamique. Utilisés par les portails en tant que composants de l'interface utilisateur, les portlets fournissent une couche de présentation aux systèmes d'information. Le contenu produit par un portlet s'appelle un «fragment». Un fragment est un morceau de balisage (par exemple HTML, XHTML, WML) régi par certaines règles et qui peut être agrégé avec les fragments d autres portlets pour former un document complet. Le contenu produit par un portlet peut changer d'un utilisateur à l'autre, en fonction de ses préférences (reportez-vous à la section Concepts). Techniquement, les portlets sont des fichiers war, qui sont déployés comme des servlets. À l'instar des servlets, un portlet est défini pour le serveur d'applications à l'aide du descripteur de déploiement de servlet web.xml. Outre le descripteur de servlet, les portlets doivent aussi fournir un descripteur de déploiement de portlet (portlet.xml) afin de définir les fonctionnalités du portlet pour le serveur de portail. Le schéma ci-dessous illustre la structure d un fichier war représentant un portlet : Illustration 2 : Contenu standard d'un fichier war représentant un portlet Les informations définies dans le fichier portlet.xml comprennent des paramètres de configuration spécifiques, comme le type de balisage pris en charge par le portlet, les valeurs des paramètres d initilialisation, etc. Ces informations permettent au serveur de portail d'offrir des services au portlet. Par exemple, si un portlet enregistre une prise en charge des modes Aide et Édition (reportez-vous à la section «Concepts») dans le descripteur de déploiement de portlet, le serveur de portail affiche des icônes qui permettent à l'utilisateur d'appeler les pages d'aide et de modification du portlet.

10 p. 10/47 Voici un exemple de fichier portlet.xml : <?xml version="1.0" encoding="utf-8"?> <portlet-app> <portlet> <description>query_portlet</description> <portlet-name>query_portlet</portlet-name> <display-name>query_portlet</display-name> <portlet-class> sql.portlet.queryportlet</portlet-class> <init-param> <name>view_url</name> </value> </init-param> <init-param> <name>help_url</name> <value>/templates/help.jsp</value> </init-param> <expiration-cache>-1</expiration-cache> <supports> <mime-type>text/html</mime-type> <portlet-mode>view</portlet-mode> </supports> <supported-locale>en</supported-locale> <portlet-info> <title>query Portlet</title> <short-title>query Portlet</short-title> </portlet-info> <portlet-preferences> <preferences-validator> sql.portlet.querypreferencesvalidator </preferences-validator> </portlet-preferences> </portlet> </portlet-app> Côté utilisateur, un portlet est une fenêtre contenue dans un site de portail, qui fournit un service ou des informations spécifiques, par exemple un agenda ou des actualités.

11 p. 11/47 Illustration 3 : Page d un portail avec des portlets Dans une optique de développement d'une application, les portlets sont des modules d'extension conçus pour s'exécuter dans un conteneur de portlet appartenant à un serveur de portail. JAHIA 5 utilise Jetspeed comme conteneur de portlet. 2.3 CONTENEUR DE PORTLET Le conteneur de portlet (Jetspeed) fournit un environnement d'exécution dans lequel les portlets sont instanciés, utilisés puis finalement détruits. Les portlets dépendent de l'infrastructure du portail pour accéder aux caractéristiques des profils utilisateur, participer aux événements d'action et de fenêtre, communiquer avec d'autres portlets, accéder à du contenu distant, consulter les accréditations et stocker les données rémanentes. L'API de portlet fournit des interfaces standard pour ces fonctions. Cependant, le conteneur n est pas responsable de l agrégation du contenu généré par les portlets. Ceci est géré par le portail. Le portail et le conteneur peuvent être mis en œuvre en même temps, comme un simple module ou bien comme deux modules distincts.

12 p. 12/ GENERATION DE LA PAGE DU PORTAIL Les portlets s exécutent dans un conteneur. Celui-ci reçoit les contenus générés par les portlets et les envoie au serveur de portail. Enfin, le serveur de portail construit la page du portail et l envoie au client (par exemple, au navigateur). Illustration 4 : Architecture de base d'un portail Site in 5 Minutes 2.5 CONCEPTS CYCLE DE VIE Le cycle de vie d un portlet est très proche de celui d un servlet. Il se décompose en trois phases : initialisation traitement des requêtes destruction Le portlet reçoit les requêtes basées sur l'interaction de l utilisateur avec le portlet ou la page du portail. Le traitement de la requête se divise en deux phases : Traitement de l action (processaction( )) : si un utilisateur clique sur un lien généré par le portlet, une action est lancée. Le traitement de l action est terminé avant que le portlet ne commence à générer le contenu. Génération du contenu (renderaction( )) : dans cette phase, le portlet génère le contenu envoyé à la page du portail. Tous les portlets contenus dans la page du portail peuvent exécuter cette phase en parallèle.

13 p. 13/47 Illustration 5 : Traitement de requêtes par les portlets Un portlet est une classe qui doit mettre en œuvre l interface javax.portlet.portlet et qui fournit quatre méthodes (init( ), processaction( ), render( ) et destroy( )) pour pouvoir être géré correctement par le conteneur. Pour obtenir plus d informations sur l interface javax.portlet.portlet, consultez la page : La classe javax.portlet.generic est une classe qui met en œuvre l interface Portlet. La méthode render( ) est décomposée en 3 méthodes : doview( ), doedit( ) et dohelp( ). Il est conseillé de dériver cette classe pour développer un portlet. Pour obtenir plus d informations, consultez la page :

14 p. 14/ GESTION DE LA SESSION Comme les objets HttpSession utilisés par les servlets, les portlets définisssent l objet PortletSession qui permet d enregistrer des objets au cours de la session du client. Deux portées sont définies lors de l enregistrement d un objet en session : PORTLET_SESSION : l objet est accessible uniquement par le portlet et l utilisateur en cours APPLICATION_SESSION : l objet est accessible par tous les portlets, servlet et jps de l application, mais uniquement par l utilisateur en cours PORTLETURL Contrairement aux servlets, un portlet n est pas directement lié à une URL. La norme JSR168 a défini la notion de PortletURL. Ceux-ci permettent de générer des URL qui pointent vers le portlet (à travers le point d entrée/sortie du portail). Il existe deux types d URL : actionsurl : les méthodes processaction( ) et renderaction( ) sont exécutées dans cet ordre. renderurl : seule la méthode render est executée SECURITE AUTHENTIFICATION L authentification est gérée par le portail (JAHIA) AUTORISATION Les portlets se basent sur le modèle de rôles défini par la norme J2EE/Servlet. Il est possible de vérifier le rôle de l utilisateur connecté via les méthodes isuserinrole(). Les méthodes getuserprincipal() et getremoteuser() permettent d obtenir le nom d utilisateur d un utilisateur MODE DE PORTLET Grâce à différents modes, un portlet peut afficher différentes interfaces utilisateur, en fonction de la tâche qu'il doit effectuer. Un portlet dispose de trois modes d'affichage qui sont définis dans le descripteur de déploiement de portlet. Le conteneur de portlet conserve le mode du portlet dans l'objet PortletMode.

15 p. 15/47 Les modes suivants sont fournis par l'api de portlet : Affichage : lorsqu'un portlet est initialement construit sur une page de portail, pour un utilisateur, il apparaît en mode Affichage. Il s'agit du mode de fonctionnement normal du portlet. Édition : si ce mode est pris en charge par le portlet, ce dernier fournit une page permettant aux utilisateurs de personnaliser le portlet en fonction de leurs besoins. Par exemple, un portlet peut fournir une page permettant aux utilisateurs d'indiquer le lieu où ils se trouvent afin d'obtenir des informations sur la météo ou les événements locaux. Les utilisateurs doivent être connectés au portail pour accéder au mode Édition. Aide : si ce mode est pris en charge par le portlet, ce dernier fournit une page d'aide offrant aux utilisateurs de plus amples informations sur le portlet. L'API de portlet offre plusieurs méthodes au portlet pour déterminer le mode en cours. Tous les portlets doivent prendre en charge le mode Affichage. Le portail inclut des commandes qui permettent aux utilisateurs de modifier le mode en cours. Voici un exemple de la barre d'un portlet en mode Affichage. Illustration 6 : Mode du portlet Cette barre affiche les modes Affichage, Édition et Aide. Le portlet passe en mode Édition lorsque l utilisateur clique sur l onglet. L API offre une la classe javax.portlet.portletmode pour gérer le mode d un portlet. Pour obtenir plus d informations sur la classe javax.portlet.portletmode, consultez la page : Il n est possible d enregistrer des préférences que pendant la phase processaction( ).

16 p. 16/ ÉTATS DU PORTLET Les différents états d'un portlet permettent aux utilisateurs de modifier l'affichage de la fenêtre du portlet sur le portail. Dans un navigateur, les utilisateurs accèdent à ces différents états grâce aux onglets de la barre de titre, comme dans les applications Windows. Les états d un portlet sont conservés dans l'objet PortletWindowState, sous la forme d'une valeur booléenne. Les états suivants sont fournis par l'api de portlet : Normal : lors de sa construction initiale sur la page de portail, le portlet apparaît en mode Normal et est organisé sur la page, avec les autres portlets. Réduit : lorsque le portlet est réduit, seule la barre de titre s'affiche sur la page du portail. Illustration 7 : État du portlet L'API de portlet offre plusieurs méthodes au portlet pour déterminer l état en cours. Pour obtenir plus d informations sur la classe javax.portlet.windowstate, consultez la page : PREFERENCES DU PORTLET Le portlet peut stocker des données permanentes pour un utilisateur spécifique en utilisant l objet PortletPreferences. Les préférences peuvent utiliser des valeurs par défaut, définies dans le descripteur de déploiement (fichier portlet.xml). Le mode conseillé pour la définition des préférences est le mode Édition. Ce mode fournit à l'utilisateur un écran de personnalisation.

17 p. 17/47 Il est possible de définir des validateurs utilisés par le conteneur pour s assurer que les valeurs des préférences sauvegardées sont conformes à certains critères LIMITATIONS IMPOSEES Les portlets génèrent des fragments HTML agrégés dans une page de portail. Par conséquence, la norme JSR168 interdit qu un portlet génère des balises de type Base, body, frame, frameset, head, html et title. 3 JAHIA ET PORTLET JSR ATTRIBUTS DE LA REQUETE Jahia ajoute des attributs dans la requête qui peuvent être très utils pour les développeurs. Il est à noter que si ces attributs sont utilisés alors la portlet n est plus compatible avec d autres portails. La table ci-dessous présente ces attributs. Ceux-ci sont accessibles à partir de la portlet grâce à la méthode renderrequest.getattribute(string attributename) de l API Portlet. Attribute name Type Value Description "org.portletapi.portal" String true Toujours à true. Permet de déterminer si l application est lancée en "standalone" ou dans le context de Jahia "org.portletapi.userlist" Vecteur d objets String Liste des noms de tous les utilisateurs Contient la liste de tous les utilisateurs. Par exemple, permet de gérer l assignation des droits à partir de la portlet. Cependant, il est préférable d utiliser les rôles si c est possible. "org.portletapi.contextid" String == fieldid Le contextid est un String qui permet d obtenir un identifiant unique pour différencier les instances de portlet. Jahia permet à une portlet d être instanciée plusieurs fois dans une même page. Dans la version actuelle de Jahia, le contextid correspond au fieldid qui contient l application. Il est aussi possible (et préférable) d obtenir un identifiant unique grâce à la méthode getnamespace() de l objet renderresponse (JSR168) "org.portletapi.fullscreen" String true / false Pas complètement implémenté. Cet attribut permet de savoir si l application est dans le mode full screen ou non. "org.jahia.sitekey" String jparams.getsitekey () L identifiant unique du site dans lequel la portlet est instanciée "org.jahia.siteurl" String jparams.getsiteurl () Un objet de type String qui contient l url du site qui correspond généralement au domaine du site comme par exemple : etc "org.jahia.siteid" String Integer.toString (jparams.getsiteid ()) Un objet de type String qui contient un entier qui correspond à l identifiant du site stocké dans la base de donnée.

18 p. 18/47 "org.jahia.pageid" String Integer.toString (jparams.getpageid ()) Un objet de type String contenant un entier qui correspond à l identifiant de la page dans laquel la portlet est affichée. "org.jahia.operationmode" String jparams.getoperation- Mode () Permet de determiner le mode actuelle de la page. Les valeurs possibles pour Jahia 4/5 sont : "normal" (appelé aussi Live dans les templates), "edit" (mode d édition), "debug" (pas utilisé mais encore accepté dans l urls des pages), "preview" (prévisualistion de la page avant d être publiée), et "compare" (un mode spécial qui permet de comparer deux versions de la page) 3.2 ATTRIBUTS DE SESSION DEFINIS DANS UN TEMPLATE Par défaut, Jahia ne partage pas les attributs mis en session avec la portlet. Ceci implique que si vous ajoutez un attribut dans la session Jahia (à traver un scriplet ou un template) en utilisant cette instruction : request.getsession().setattribute( name, value ); vous ne pourrez pas y accéder à partir de la portlet avec cette instruction : renderrequest.getportletsession().getattribute( name ); Cette limitation existe pour des questions de sécurité. L application doit être au maximum indépendante pour éviter les conflits de nom des attributs qui peuvent engendrer des comportements inattendus. Cependant, il est possible de désactiver cette limitation grâce à une propriété qu se trouve dans le fichier de configuration, jahia.properties : webapps.dispatcher.inheritjahiasessionattributes = true Par défaut, cette propriété est à false. La valeur true permet aux portlets d accéder aux attributs de session de Jahia.

19 p. 19/47 CHAPITRE 2 : DEVELOPPER UN PORTLET DE BASE Ce chapitre présente un exemple de développement et de déploiement d un portlet sous JAHIA 5, à l aide d un modèle de base. 1 INTRODUCTION Le but de ce portlet est d afficher le message Hello World!. Les différentes étapes sont les suivantes : écriture de la classe HelloWorldPortlet qui implémente l interface javax.portlet.portlet écriture des fichiers portlet.xml et web.xml archivage du portlet dans un fichier war déploiement du portlet affichage dans une page Jahia Le développement d un portlet requiert la présence de la bibliothèque portlet.api. Celle-ci est disponible sur à cette adresse : 2 CLASSE HELLOWORLDPORTLET Comme pour tout portlet, la classe doit implémenter l interface javax.portlet.portlet. L API du portlet propose une classe, appelée GenericPortlet, qui implémente cette interface. Cette classe décompose la méthode render( ) en trois méthodes : doview( ) : portlet en mode Affichage dohelp( ) : portlet en mode Aide doedit( ) : portlet en mode Édition Notre portlet n est utilisable qu en mode Affichage. Nous allons surchager la méthode doview( ). public void doview(renderrequest req, RenderResponse resp) { try { response.setcontenttype("text/html"); PrintWriter out = resp.getwriter(); out.print("hello world");

20 p. 20/47 } catch (Exception ex) { ex.printstacktrace(); } } La méthode doview( ) est similaire aux méthodes doget( ) et dopost( ) des servlets. L objet PrintWriter permet d écrire dans le flux renvoyé par le portail. Celui-ci est ensuite agrégé avec celui des autres portlets et le modèle Jahia, afin de former une page Jahia complète. Voici le code complet du portlet : package org.jahia.portlet; import javax.portlet.*; import java.io.printwriter; import java.io.*; import java.lang.stringbuffer; /** * HelloWorldPortlet * Khaled TLILI */ public class HelloWorldPortlet extends GenericPortlet { /** * Init portlet method * config Description of Parameter PortletException Description of Exception */ public void init(portletconfig config) throws PortletException { super.init(config); } /** * processaction method */

21 p. 21/47 public void processaction(actionrequest request, ActionResponse response) { System.out.println("====== Begin process method ======"); } /** * render method */ public void doview(renderrequest request, RenderResponse response) { try { response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); PortletURL url = response.createrenderurl(); PortletURL actionurl = response.createactionurl(); out.print("hello world!"); } catch (Exception ex) { ex.printstacktrace(); } } /** * destroy method */ public void destroy() { super.destroy(); } } Pour compiler ce portlet, il est nécessaire d ajouter la bibliothèque portlet.jar au classpath. Pour ajouter les modes Édition et Aide, il est nécessaire de mettre en œuvre respectivement les méthodes doedit( ) et dohelp( ) et de mettre à jour les fichiers portlet.xml.

22 p. 22/47 3 FICHIER PORTLET.XML Ce fichier sert à décrire les portlets qui vont être déployés dans JAHIA, sous la forme d une application Web. <?xml version="1.0" encoding="utf-8"?> <portlet-app version="1.0"> <portlet> <description>hello World portlet</description> <portlet-name>helloworldportlet</portlet-name> <portlet-class>org.jahia.portlet.helloworld</portlet-class> <supports> <mime-type>text/html</mime-type> <portlet-mode>view</portlet-mode> </supports> <portlet-info> <title>simpleportlet</title> </portlet-info> </portlet> </portlet-app> Ce descripteur contient diverses informations sur le portlet, comme son nom, la classe qui contient sa mise en œuvre, les modes qu il supporte (dans notre exemple : uniquement le mode Affichage), ainsi que des informations le décrivant. Le fichier portlet.xml est placé au même niveau que le ficher web.xml, c est-à-dire dans le répertoire WEB-INF. Une application peut déclarer plusieurs portlets. Ceci permet de n avoir qu un seul fichier *.war ou de regrouper des portlets similaires (fonctionnalités, back end, etc.). 4 FICHIER WEB.XML Dans notre exemple, le ficher web.xml est vide. JAHIA (via Jetspeed) y ajoute certaines informations après le déploiement.

23 p. 23/47 Après le déploiement, le contenu du fichier web.xml est : <?xml version="1.0" encoding="utf-8"?> <web-app> <display-name>helloworldportlet</display-name> <description>hello World Portlet </description> <servlet> <servlet-name>jetspeedcontainer</servlet-name> <display-name>jetspeed Container</display-name> <description>mvc Servlet for Jetspeed Portlet Applications</description> <servlet-class>org.apache.jetspeed.container.jetspeedcontainerservlet</servlet-class> <init-param> <param-name>contextname</param-name> <param-value> HelloWorldPortlet</param-value> </init-param> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jetspeedcontainer</servlet-name> <url-pattern>/container/*</url-pattern> </servlet-mapping> <taglib> <taglib-uri>http://java.sun.com/portlet</taglib-uri> <taglib-location>/web-inf/tld/portlet.tld</taglib-location> </taglib> </web-app> Si le fichier web.xml avait déjà contenu des informations, celles-ci auraient étés agrégées avec le contenu ci-dessus. 5 DEPLOIEMENT Les portlets ont la même structure que les applications Web classiques. L arborescence suivante doit être respectée :

24 p. 24/47 + HelloWorldPortlet + META-INF + WEB-INF + classes + + lib porlet.xml web.xml Après sa création, le fichier HelloWorld.war doit être placé dans le répertoire suivant : ${TOMCAT_HOME}\webapps\jahia\WEB-INF\var\new_webapps. JAHIA déploie automatiquement le portlet. Ce déploiement automatique effectue les actions suivantes : déplacement du fichier HelloWorld.war dans : ${TOMCAT_HOME}\webapps\jahia\WEB-INF \etc\jetspeed\deploy ajout d une entrée dans la base de données réécriture du fichier web.xml déploiement de l application dans tomcat La génération du fichier peut se faire à l aide de la commande jar de java, ou des outils ant ou maven. La procédure de redéploiement est identique. Cependant, il est nécessaire de s assurer qu aucun fichier n est verrouillé (jar, fichier de propriétés, fichier de la base de données Hsql, etc.) NE PLACEZ JAMAIS LE FICHER *.WAR DIRECTEMENT DANS ${TOMCAT_HOME}\webapps. JAHIA DOIT AU MINIMUM RÉÉCRIRE LE FICHIER WEB.XML 6 VISUALISATION Pour visualiser le portlet, il faut ajouter le portlet à une page JAHIA (reportez-vous au document JahiaEndUserGuide.pdf).

25 p. 25/47 CHAPITRE 3 : DEVELOPPER UN PORTLET AVANCE Ce chapitre présente le développement d un portlet avancé. Nous allons étudier comment utiliser les JSP, les attributs, les préférences et les modes. 1 INTRODUCTION Le but de ce portlet est d afficher le message : Hello <nom de l utilisateur>! Votre film préféré est <nom du film>. Le portlet doit permettre à l utilisateur connecté de spécifier le nom de son film préféré. Cette portlet utilisera 3 modes : Affichage : pour afficher le message ci-dessus. Édition : pour éditer les préférences Aide : pour afficher un message d aide Nous vous conseillons de n autoriser la mise à jour des valeurs des préférences par l utilisateur que dans le mode Édition. Les différentes étapes sont les suivantes : écriture de la classe HelloPortlet qui met en œuvre l interface javax.portlet.portlet écriture des fichiers portlet.xml et web.xml archivage du portlet dans un fichier *.war déploiement du portlet affichage dans une page Jahia

Applications Web (Java)

Applications Web (Java) Applications Web (Java) Mohamed Quafafou 4A Polytech'Marseille mohamed.quafafou@univ-amu.fr 1 Servlets [Bases Exemples] 2 Java Servlets Java Servlet est une extension générique de serveur qui signifie

Plus en détail

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. L3 Pro Informatique - 2010-2011

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. L3 Pro Informatique - 2010-2011 1 / 34 Développement Web - Servlet Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer L3 Pro Informatique - 2010-2011 2 / 34 Plan Plan 1 Introduction 2 Servlet

Plus en détail

TD4 : Wikis, Servlets & Projet

TD4 : Wikis, Servlets & Projet Université Bordeaux 1 T.D. License 3 Informatique 2007 2008 TD4 : Wikis, Servlets & Projet L objet de cette séance est de vous familiariser avec les sockets et les servlets, et d introduire le projet.

Plus en détail

Frame m w e o w rk k STR T U R T U S T Confi o gur g e ur r r un e un nv n iro r nne o me m nt Axel KAMALAK

Frame m w e o w rk k STR T U R T U S T Confi o gur g e ur r r un e un nv n iro r nne o me m nt Axel KAMALAK Framework STRUTS Configurer un environnement Axel KAMALAK Outils nécessaires Eclipse Java EE IDE for Web Developers. Tomcat 5.5 Struts 1.3.10 JRE 6 Outils nécessaires Eclipse Java EE IDE for Web Developers.

Plus en détail

Partie 2.2: Servlet et Tomcat

Partie 2.2: Servlet et Tomcat Partie 2.2: Servlet et Tomcat 1 Plan du cours Servlets Présentation Exemple 2 Plan du cours Tomcat Des servlets à Tomcat: pourquoi Tomcat? Architecture Tomcat Installation et configuration de Tomcat Configuration

Plus en détail

Applications Web. Cours 2: Introduction J2EE Servlets et JSP. Khaled Khelif

Applications Web. Cours 2: Introduction J2EE Servlets et JSP. Khaled Khelif Applications Web Cours 2: Introduction J2EE Servlets et JSP Khaled Khelif 1 Rappel Web statique vs. Web dynamique Principe des applications web Protocole HTTP : requêtes en mode texte Développement d applications

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Applications Web et servlets Java

Applications Web et servlets Java Département de génie logiciel et des TI LOG660 - Base de données haute performance Applications Web et servlets Java Application Web Une application Web répartie sur trois couches (three-tier Web application)

Plus en détail

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

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

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Université Claude Bernard Lyon 1 UFR d informatique avril 2006 MIAG soir Systèmes d Information Méthodes Avancées TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Introduction Dans ce

Plus en détail

Les servlets Le langage Java Les Servlets XVII-1 JMF

Les servlets Le langage Java Les Servlets XVII-1 JMF Les Servlets XVII-1 servlet =? Une servlet est un programme (plug-in) à ajouter à un serveur (quel qu'il soit). Ce cours a trait à la programmation Java coté serveur (J2EE ) Pour l'instant les serveurs

Plus en détail

Plan. Environnement Client/Serveur. Cours 7 JavaServer Pages (1) JSP. Programmation Web coté serveur

Plan. Environnement Client/Serveur. Cours 7 JavaServer Pages (1) JSP. Programmation Web coté serveur Plan Environnement Client/Serveur Cours 7 JavaServer Pages (1) kn@lri.fr 7.1 Principe 7.2 Rappels HTTP 7.3 Le serveur web Tomcat Programmation Web coté serveur JSP 2/28 (rappel) génération de pages-web

Plus en détail

Programmation servlet

Programmation servlet Programmation servlet Olivier Aubert 1/23 Références http://developer.java.sun.com/developer/onlinetraining/servlets/fundamenta http://www.servlets.com http://java.sun.com/products/jsp/index.html http://www.servletcentral.com/

Plus en détail

Ala Eddine BEN SALEM. T.P. 2 Servlet

Ala Eddine BEN SALEM. T.P. 2 Servlet EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 2 Servlet 1. Création d'un projet Web: A l'aide d'eclipse, créer un nouveau projet «sampleservlet» avec comme environnement d'exécution le serveur Tomcat installé

Plus en détail

Les portails : la synthèse

Les portails : la synthèse Les portails : la synthèse Ce document a comme finalité la présentation d un état des lieux non exhaustif de ce que le terme de portail induit et de proposer une base de débat. Je ne prétends en aucun

Plus en détail

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. M2 CDS2I - 4 février 2010

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. M2 CDS2I - 4 février 2010 1 / 24 Développement Web - Servlet Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer M2 CDS2I - 4 février 2010 2 / 24 Plan Plan 1 2 Le modèle MVC 3 Structure

Plus en détail

Les architectures N-tiers

Les architectures N-tiers Les architectures N-tiers 1 SOMMAIRE DU COURS XML ET LES ARCHITECTURES N-TIER Introduction aux architectures N-tier Serveurs d applications Déploiement d applications J2EE Tiers applicatif : servlets Tiers

Plus en détail

Mise en œuvre de serveurs d application TD n o 2

Mise en œuvre de serveurs d application TD n o 2 Master IST-IE 2007 08 UE 203d Mise en œuvre de serveurs d application TD n o 2 1 Introduction Dans ce TD, vous regarderez le contenu d une application J2EE. Ensuite, vous utiliserez les pages JSP pour

Plus en détail

Formation ESUP Portail Cours 4

Formation ESUP Portail Cours 4 Formation ESUP Portail Cours 4 http://www.esup-portail.org 1 Plan Prérequis Outils Normes Esup portail Canal uportal Publication d'un canal Web services 2 Prérequis Java Ant XML XSL/XSLT 3 Outils http://www.esup-portail.org/consortium/espace/normes_1c/tech/build/index.

Plus en détail

Utilisation de Jakarta Tomcat

Utilisation de Jakarta Tomcat ISI 1022 : Déploiement d applications Web Jean-Noël Sorenti. Année 2002/2003 Déploiement d application Web Utilisation de Jakarta Tomcat ISI 1022 : 1 ISI 1022 : Déploiement d applications Web Une application

Plus en détail

Manuel d utilisation du site web de l ONRN

Manuel d utilisation du site web de l ONRN Manuel d utilisation du site web de l ONRN Introduction Le but premier de ce document est d expliquer comment contribuer sur le site ONRN. Le site ONRN est un site dont le contenu est géré par un outil

Plus en détail

JOnAS Day 5.1. Outils de développements

JOnAS Day 5.1. Outils de développements JOnAS Day 5.1 Outils de développements Agenda Introduction Plugin Eclipse (JOPE) Plugin NetBeans (JOnbAS) Cargo 2 Bull, 2009 JOnAS Day 5.1 Objectifs - Réduire les temps de développement - Construction

Plus en détail

Traitement et navigation

Traitement et navigation 12 Traitement et navigation Au chapitre précédent, nous avons vu comment créer des pages web avec différentes technologies (HTML, JSP, JSTL, etc.) en insistant sur le fait que JSF est la spécification

Plus en détail

Noël Macé Formateur et Consultant indépendant expert Unix et FOSS http://www.noelmace.com. Java EE. Tomcat

Noël Macé Formateur et Consultant indépendant expert Unix et FOSS http://www.noelmace.com. Java EE. Tomcat Noël Macé Formateur et Consultant indépendant expert Unix et FOSS http://www.noelmace.com Java EE Tomcat Licence Creative Commons Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative

Plus en détail

1 Introduction à Apache Maven

1 Introduction à Apache Maven IUT Bordeaux 1 - Département Informatique Semestre 4 JEE 20112012 TP JEE (0) Introduction à MAVEN 1 Introduction à Apache Maven Les projets Java (surtout JEE) ont la particularité de dépendre de beaucoup

Plus en détail

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement : Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

Plus en détail

Projet Java EE Approfondi

Projet Java EE Approfondi EISTI Projet Java EE Approfondi Manuel d installation du framework Stripes Amaury Languillat, Yann Gonzalez, Arnaud Recher, Vincent Laronde, Anys Mechkar 10 Manuel d installation Téléchargement On part

Plus en détail

J2EE. A.-E. Ben Salem. 09 Octobre 2011. LRDE and LIP6 1 / 15

J2EE. A.-E. Ben Salem. 09 Octobre 2011. LRDE and LIP6 1 / 15 J2EE A.-E. Ben Salem LRDE and LIP6 09 Octobre 2011 1 / 15 Plan 1 J2EE 2 Architecture Client/Serveur HTTP 3 Différence entre Web Statique et Web Dynamique 4 Web Dynamique avec un Serveur d applications

Plus en détail

SQLI. Solution Santé. IdeoSSO - Intégration d'un client IdeoSSO 22/10/2007. Confidentiel SQLI Solution Santé 28/03/2008 P 1/35

SQLI. Solution Santé. IdeoSSO - Intégration d'un client IdeoSSO 22/10/2007. Confidentiel SQLI Solution Santé 28/03/2008 P 1/35 SQLI Solution Santé IdeoSSO - Intégration d'un client IdeoSSO 22/10/2007 Confidentiel SQLI Solution Santé 28/03/2008 P 1/35 Historique Historique des versions du document Version / Date Auteur Commentaire

Plus en détail

Java EE Cours 1. Présentation Générale. Cours de 2 e année ingénieur

Java EE Cours 1. Présentation Générale. Cours de 2 e année ingénieur Java EE Cours 1 Présentation Générale Cours de 2 e année ingénieur 1 Présentation du cours Objectifs Développement d applications Web robustes «Ne pas réinventer la roue» utilisation d un framework 1 Apprentissage

Plus en détail

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz Master 2 SITW Les services Web Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz Maitre de Conférences A, Département TLSI Faculté des NTIC Université Constantine 2 Abdelhamid Mehri

Plus en détail

Bypass et filtre sur les requêtes destinées à la servlet W4

Bypass et filtre sur les requêtes destinées à la servlet W4 Note technique W4 Engine Bypass et filtre sur les requêtes destinées à la servlet W4 Cette note technique décrit le filtre de contrôle du bypass de la servlet W4. Versions de W4 Engine concernées : 5.0

Plus en détail

Application de lecture de carte SESAM-Vitale Jeebop

Application de lecture de carte SESAM-Vitale Jeebop Application de lecture de carte SESAM-Vitale Jeebop Présentation Le module de lecture de carte SESAM-Vitale Jeebop est une application Java Web Start, c'est à dire une application Java qui se télécharge

Plus en détail

Développement de Servlets et JSP avec Eclipse

Développement de Servlets et JSP avec Eclipse Développement de Servlets et JSP avec Eclipse Sommaire 1 Mise en place o 1.1 Installation de Galileo o 1.2 Association de Galileo avec une installation de Tomcat o 1.3 Pilotage des serveurs 2 Développement

Plus en détail

A. Architecture du serveur Tomcat 6

A. Architecture du serveur Tomcat 6 Administration du serveur A. Architecture du serveur Tomcat 6 La compréhension de l architecture interne du serveur Tomcat 6 est un pré-requis indispensable pour bien en maîtriser l administration et la

Plus en détail

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 Premières applications Web 2.0 avec Ajax et PHP J e a n - M a r i e D e f r a n c e Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 8 Applications Ajax-PHP synchrones Pour commencer simplement, je vous

Plus en détail

[ Hornet ] Guide de migration d'un projet Acube vers Hornet

[ Hornet ] Guide de migration d'un projet Acube vers Hornet [ Hornet ] Guide de migration d'un projet Acube vers Hornet 3.6B Cette création est mise à disposition selon le Contrat Paternité - Pas d'utilisation Commerciale - Partage des Conditions Initiales à l'identique

Plus en détail

Programmation Web Avancée JSP

Programmation Web Avancée JSP 1/50 Programmation Web Avancée JSP Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017

Plus en détail

AP-5 TD n 2 J2EE 5 novembre 2013

AP-5 TD n 2 J2EE 5 novembre 2013 Objectifs Prérequis Gestion des informations temporaires, sessions et cookies JSP et servlets, mise en place d un contrôleur Java Runtime Environnement (http://www.java.com/fr/download/) (JRE Java 7) IDE

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

Plus en détail

Plan de la présentation

Plan de la présentation Plan de la présentation Qu'est ce que Java et JEE? Comment se fait l'évolution de Java? Les architectures SOA. Les technologies (JSR). Les frameworks. Le middleware. Les outils. Qu'est ce que Java et JEE?

Plus en détail

TP 5 Serveur REST, tests et premier client REST

TP 5 Serveur REST, tests et premier client REST TP 5 Serveur REST, tests et premier client REST Xavier de Rochefort xderoche@labri.fr - labri.fr/~xderoche 13 mai 2014 Résumé Les derniers TP vous ont guidé dans ➊ la mise en place d un serveur REST avec

Plus en détail

TP 6 : Java Server Pages et Tomcat.

TP 6 : Java Server Pages et Tomcat. TP 6 : Java Server Pages et Tomcat. Christophe Gravier, Frédérique Laforest, Julien Subercaze Télécom Saint-Étienne Université Jean Monnet {pnom.nom}@univ-st-etienne.fr FI2_INFO4 20122013 1 / 24 Plan Objectifs

Plus en détail

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence

Plus en détail

18/05/2010 JSF : Java server faces

18/05/2010 JSF : Java server faces 18/05/2010 JSF : Java server faces Groupe JAXB - JSF TABLE DES MATIÈRES OBJECTIF...2 VERSION... ERREUR! SIGNET NON DEFINI. MISE EN ŒUVRE...2 UTILISATION...4 Génération des classes à partir d un schéma...

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

Intégration du module de paiement pour la plateforme OSCommerce 2.3

Intégration du module de paiement pour la plateforme OSCommerce 2.3 Intégration du module de paiement pour la plateforme OSCommerce 2.3 Sommaire 1. HISTORIQUE DU MODULE...3 2. FONCTIONNALITÉS DU MODULE... 4 3. A LIRE ABSOLUMENT AVANT D'ALLER PLUS LOIN... 5 4. FONCTIONNALITÉS

Plus en détail

Création d'un projet Web avec Netbeans 1. Création de son projet Web

Création d'un projet Web avec Netbeans 1. Création de son projet Web 1. Création de son projet Web Web Application Web Next Nommer le projet propose une localisation des sources par défaut Laisser Set as Main Project Next Tomcat 6 serveur d'application par défaut Choisi

Plus en détail

TotEM. Guide d installation de l application. Décembre 2012 R006

TotEM. Guide d installation de l application. Décembre 2012 R006 TotEM Guide d installation de l application Décembre 2012 R006 TotEM Guide d installation de l application 1. Introduction 3 2. Installer le serveur (autonome) 10 3. Installer le serveur (application War)

Plus en détail

Tarak CHAARI Application Web en Java ISECS 2

Tarak CHAARI Application Web en Java ISECS 2 Programmation d Application Web avec Java Tarak CHAARI tarak.chaari@isecs.rnu.tn Université de Sfax, 2009-20102010 Tarak CHAARI Application Web en Java Version adaptée ISECS du cours de Mr Walid MAHDI

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

Joomla : un système de gestion de contenu

Joomla : un système de gestion de contenu CHAPITRE 2 Joomla : un système de gestion de contenu Si SGC est l abréviation française pour système de gestion de contenu, l abréviation CMS de l anglais Content Management System est le terme le plus

Plus en détail

Développer de nouvelles fonctionnalités

Développer de nouvelles fonctionnalités 19 Développer de nouvelles fonctionnalités Chaque site e-commerce est unique. Bien que Magento soit une application riche, des besoins spécifiques apparaîtront et l ajout de modules deviendra nécessaire.

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

Plus en détail

MANUEL DU KIT DE DEVELOPPEMENT DE CONNECTEURS Référence: W4JC_DEVKIT_020_FR

MANUEL DU KIT DE DEVELOPPEMENT DE CONNECTEURS Référence: W4JC_DEVKIT_020_FR W4 CONNECTORS FOR JAVA MANUEL DU KIT DE DEVELOPPEMENT DE CONNECTEURS Référence: W4JC_DEVKIT_020_FR Les prochaines mises à jour de ce document seront disponibles sur www.myw4.com W4 CONNECTORS FOR JAVA

Plus en détail

Développement OSGi dans Eclipse

Développement OSGi dans Eclipse B Développement OSGi dans Eclipse L objectif de cette annexe est de venir en complément des chapitres de la partie V afin de décrire la manière d utiliser l outil Eclipse afin de développer et de tester

Plus en détail

W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS. Référence: W4XT_TUTORIAL_020_FR

W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS. Référence: W4XT_TUTORIAL_020_FR W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS Référence: W4XT_TUTORIAL_020_FR Les prochaines mises à jour de ce document seront disponibles sur www.myw4.com W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT

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

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

Technologies du Multimédia et du Web

Technologies du Multimédia et du Web 3 ème Année Licence appliquée Technologies du Multimédia et du Web MoezBEN HAJ HMIDA ISSAT Sousse 2009/2010 Plan Les systèmes e-services Évolution des architectures d applications Les architectures client/serveur

Plus en détail

Architecture J2EE. Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE. Thierry Lecroq (Univ. Rouen) J2EE 1 / 16

Architecture J2EE. Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE. Thierry Lecroq (Univ. Rouen) J2EE 1 / 16 Architecture J2EE Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE Thierry Lecroq (Univ. Rouen) J2EE 1 / 16 Plan 1 Historique 2 Architecture J2EE 3 J2EE et applications

Plus en détail

Documentation technique

Documentation technique MEEVY Documentation technique Juillet 200 MEEVY a pour but de fournir aux artistes des outils pour promouvoir leur musique sur internet et proposer à l auditeur une plateforme de musique en ligne gratuite

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

2.1 Jetspeed 2 en un clin d'oeil...4 2.2 Forces, faiblesses, opportunités et menaces...4 2.3 Résumé de notre évaluation...5

2.1 Jetspeed 2 en un clin d'oeil...4 2.2 Forces, faiblesses, opportunités et menaces...4 2.3 Résumé de notre évaluation...5 Livre Blanc PORTAILS D'INTÉGRATION Apache Jetspeed 2 Version 1.0-15 février 2005 SOMMAIRE 1 PRÉSENTATION...3 2 SYNTHÈSE...4 2.1 Jetspeed 2 en un clin d'oeil...4 2.2 Forces, faiblesses, opportunités et

Plus en détail

ESUP Portail. ESUP Portail Un ENT universitaire! Contexte. Objectifs d ESUP Portail. Grandes orientations technologiques

ESUP Portail. ESUP Portail Un ENT universitaire! Contexte. Objectifs d ESUP Portail. Grandes orientations technologiques ESUP Portail Un ENT universitaire! ESUP Portail Présentation générale du projet Jean-Michel Antoine Jean-Guy Avelin Raymond Bourges Architecture Intégration au SI de l établissement Développement de canaux

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

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 52

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 52 Java et Objet Amélie Lambert 2014-2015 Amélie Lambert 2014-2015 1 / 52 Chapitre 10 Le langage JavaServer Pages (JSP) et le modèle de composants Java (Java beans) Amélie Lambert 2014-2015 2 / 52 Plan du

Plus en détail

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript...

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Projet Web Tim Burton Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Par Omar EDDASSER L3 ISC parcours MIAGE Sous l enseignement

Plus en détail

Java Server Faces. Claude Duvallet 1/44. Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX

Java Server Faces. Claude Duvallet 1/44. Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/ Claude Duvallet 1/44

Plus en détail

Manuel COMMENCE. Connect For Email

Manuel COMMENCE. Connect For Email Manuel COMMENCE Connect For Email Sommaire SOMMAIRE 2 CHAPITRE 1 : INTRODUCTION 4 A QUOI ÇA SERT? 4 CHAPITRE 2 : PRISE EN MAIN 5 MINIMUM REQUIS POUR EXÉCUTER CONNECT FOR EMAIL 5 CE QUE GÉNÈRE L INSTALLATION

Plus en détail

Application Web et J2EE

Application Web et J2EE Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis

Plus en détail

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs.

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs. Cours Serveurs d application et Java avancé Introduction au cours Serveurs d application et Java avancé ITU Université de Nice Richard Grin Version O 1.0.1 12/4/14 20 h de cours et TPs Richard Grin, université

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

Guide d intégration. Protection de classeurs Microsoft EXCEL avec CopyMinder. Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika.

Guide d intégration. Protection de classeurs Microsoft EXCEL avec CopyMinder. Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika. Guide d intégration Protection de classeurs Microsoft EXCEL avec CopyMinder Contact commercial : Tél. : 02 47 35 70 35 Email : com@aplika.fr Contact Technique : Tél. : 02 47 35 53 36 Email : support@aplika.fr

Plus en détail

Guide des mises à jour de Support Package de la suite SAP BusinessObjects BI

Guide des mises à jour de Support Package de la suite SAP BusinessObjects BI Suite SAP BusinessObjects Business Intelligence Version du document : 4.0 Support Package 10-2014-07-24 Guide des mises à jour de Support Package de la suite SAP BusinessObjects BI Table des matières 1

Plus en détail

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1. Plateforme PAYZEN Intégration du module de paiement pour la plateforme Magento version 1.3.x.x Paiement en plusieurs fois Version 1.4a Guide d intégration du module de paiement Multiple Magento 1/24 SUIVI,

Plus en détail

Rapport Gestion de projet

Rapport Gestion de projet IN56 Printemps 2008 Rapport Gestion de projet Binôme : Alexandre HAFFNER Nicolas MONNERET Enseignant : Nathanaël COTTIN Sommaire Description du projet... 2 Fonctionnalités... 2 Navigation... 4 Description

Plus en détail

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 ARCHITECTURE REST & WEB SERVICES Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 1 Introduction Présentation de Rest Serveur Java JAX-RS Démonstration 2 Introduction Présentation de Rest

Plus en détail

Systèmes de Gestion de Contenu

Systèmes de Gestion de Contenu Introduction aux de site Web Master 1 CAWEB Page 1/7 Introduction Définition CMS Content Management Systems : logiciels de conception et de mise à jour dynamique de site web ou d'application multimédia

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Java EE. Cours de 2 e année ingénieur Spécialisation «Génie Informatique» fabien.romeo@fromeo.fr http://www.fromeo.fr

Java EE. Cours de 2 e année ingénieur Spécialisation «Génie Informatique» fabien.romeo@fromeo.fr http://www.fromeo.fr Java EE Cours de 2 e année ingénieur Spécialisation «Génie Informatique» fabien.romeo@fromeo.fr http://www.fromeo.fr Introduction aux JSP JSP Les servlets facilitent le traitement avec java des requêtes

Plus en détail

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42 Java et Objet Amélie Lambert 2014-2015 Amélie Lambert 2014-2015 1 / 42 Chapitre 8 Développement d applications Web Amélie Lambert 2014-2015 2 / 42 Plan du cours Typologie des applications Web Architecture

Plus en détail

Guide d installation. Le Portail Sage v2.0. Pour les professionnels de l Habitat Social

Guide d installation. Le Portail Sage v2.0. Pour les professionnels de l Habitat Social Guide d installation Le Portail Sage v2.0 Pour les professionnels de l Habitat Social Le Portail Sage 2.0 juin 2011 Sommaire 1 Prérequis d installation :... 3 2 Architecture technique... 4 2.1 Ordre d

Plus en détail

Programmation JAVA / J2EE

Programmation JAVA / J2EE Programmation JAVA / J2EE Auteur : François-Xavier SENNESAL Web: www.sennesal.fr Email: 1 SOMMAIRE 1. Rappels sur les fondamentaux du web 2. Mise en place de l environnement 3. Fondamentaux du langage

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

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

Programmation du Web : Présentation du Web dynamique

Programmation du Web : Présentation du Web dynamique Programmation du Web : Présentation du Web dynamique Jean-Baptiste Vioix (Jean-Baptiste.Vioix@u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-8 Présentation Nécessité du web dynamique

Plus en détail

TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète

TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète Nous allons écrire une application J2EE qui permet dans un navigateur web de gérer des contacts. Pour cela, nous allons suivre

Plus en détail

Spring MVC. Implémentation du pattern MVC de type 2 dans Spring

Spring MVC. Implémentation du pattern MVC de type 2 dans Spring 7 Spring MVC La mise en pratique du patron de conception MVC (Model View Controller) offre une meilleure structuration du tiers de présentation des applications Java EE en dissociant les préoccupations

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

TP 3 Outils de programmation Web

TP 3 Outils de programmation Web TP 3 Outils de programmation Web L'objectif de ce TP est de bien comprendre et maîtriser la technologie des servlets. La maîtrise de ces briques de base doit vous permettre de construire de larges applications

Plus en détail

2.1 Liferay en un clin d'oeil... 4 2.2 Forces, faiblesses, opportunités et menaces... 4 2.3 Résumé de notre évaluation... 5

2.1 Liferay en un clin d'oeil... 4 2.2 Forces, faiblesses, opportunités et menaces... 4 2.3 Résumé de notre évaluation... 5 Livre Blanc LE PORTAIL D'INTÉGRATION LIFERAY Version 1.0 - Novembre 2006 SOMMAIRE 1 PRÉSENTATION... 3 2 SYNTHÈSE... 4 2.1 Liferay en un clin d'oeil... 4 2.2 Forces, faiblesses, opportunités et menaces...

Plus en détail

7.0 Guide de la solution Portable sans fil

7.0 Guide de la solution Portable sans fil 7.0 Guide de la solution Portable sans fil Copyright 2010 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur

Plus en détail

Exercice sur les EJB Session avec état

Exercice sur les EJB Session avec état Exercice sur les EJB Session avec état Soit un site de commerce électronique appartenant à un fournisseur de matériel informatique. Une page principale permet à l utilisateur de s inscrire, donc de saisir

Plus en détail

Interactions audio sur le site web du LIA Documentation Technique

Interactions audio sur le site web du LIA Documentation Technique 2007 Interactions audio sur le site web du LIA Documentation Technique Projet 13 - IUP Avignon Master1 TAIM 28/05/2007 2 Projet 13 : Interactions audio sur le site web du LIA Sommaire Composants de l'application...

Plus en détail

Implémentée sous forme de JavaBean ou EJB, c est dans cette couche que l on retrouve l ensemble des traitements d une application.

Implémentée sous forme de JavaBean ou EJB, c est dans cette couche que l on retrouve l ensemble des traitements d une application. Introduction Nous allons parler, dans ce document consacré aux architectures multi-tiers en environnement J2EE, de 3 des cinq couches les plus représentatives. Faisons tout d'abord un petit rappel sur

Plus en détail

Evolutions du Web et des langages

Evolutions du Web et des langages Evolutions du Web Evolutions du Web et des langages WEB statique Ces pages sont écrites en HTML Les pages demandées sont identiques quelque soit La personne qui les demande L heure de la demande Etc. WEB

Plus en détail

Plan. La plate-forme J2EE. Plan J2SE. Standard Edition. Master Informatique 2ème année. Olivier Flauzac. olivier.flauzac@univ-reims.

Plan. La plate-forme J2EE. Plan J2SE. Standard Edition. Master Informatique 2ème année. Olivier Flauzac. olivier.flauzac@univ-reims. Plan La plate-forme J2EE Master Informatique 2ème année Olivier Flauzac olivier.flauzac@univ-reims.fr Olivier Flauzac (URCA) La plate-forme J2EE olivier.flauzac@univ-reims.fr 1 / 64 Olivier Flauzac (URCA)

Plus en détail