Académique Documents
Professionnel Documents
Culture Documents
Cours Liferay
Cours Liferay
Le CMS LIFERAY
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/
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Liferay est un portail dintgration permettant aux utilisateurs daccder des pages regroupant divers contenus et outils.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les forces :
Il possde de nombreux environnements de dploiement. Il est conforme au standard JSR 168. Il permet un agencement des portlets trs facile. Il offre de nombreuses possibilits dextension. Il repose sur le dveloppement de portlets standards. Il possde la vitalit des projets Open Source.
Les faiblesses :
La documentation de certaines fonctionnalits est manquante. La concurrence dautres projets Open Source est importante. Il possde une communaut restreinte de dveloppeurs.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Une gestion de droits dlgus, exploitant la notion de rle. Chaque rle peut tre appliqu une communaut, ou bien lensemble du portail. Administrateur, Contributeur, Validateur. Une sparation entre : La prsentation et la navigation. Le modle de disposition des portlets (colonage). Les gabarits de la gestion de contenus. Les portlets.
Claude Duvallet 8/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le vocabulaire de Liferay
Contenu web = Article Type de contenu = Structure gabarit de contenu = template Application = portlet Page = Layout Prsentation (charte graphique) = Theme colonage = modle de disposition = Layout template Action possible sur un objet (Permissions) :
Applicable aux portlets, contenus, sujets de forum...
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Par contre, contrairement aux portails commerciaux, aucun connecteur vers des progiciels ou des outils de reporting nest fourni.
Claude Duvallet 12/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
De nombreux portlets sont dj intgrs Liferay et permettent de rpondre certains besoins. Nanmoins, lintgration ou le dveloppement de nouveaux portlets permet dutiliser Liferay comme un framework de portail. Il offre ainsi des services de bases trs pousss (Gestion des utilisateurs, des permissions, de lauthentication,...).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le rendu de Liferay
Liferay est fourni avec plusieurs thmes prinstalls et beaucoup dautres raliss par la communaut dutilisateurs sont tlchargeables sur le site. Deux possibilits sont offertes pour crer ses propres thmes : les dvelopper laide de pages JSP ou bien en utilisant le moteur Velocity. Les thmes construits avec Velocity sont dployable chaud , sans redmarrage du serveur. Dans les 2 cas, il sagit de fournir un modle pour les diffrents lments de la page (en-tte, pied-de-page, portlet,...), dajouter les images qui sont utilises pour construire le site et la feuille de style qui sera applique. Un chier xml accompagnera le thme permettant de dnir le nom sous lequel apparatra le thme dans linterface de choix.
Claude Duvallet 15/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Entreprise
Organisation
Organisation
Location
Location
Claude Duvallet 16/110 LIFERAY
Location
Location
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Paralllement cela, des Groupes peuvent tre crs permettant de regrouper des utilisateurs provenant dOrganisations ou de Locations diffrentes. Voici un aperu du portlet dadministration du niveau Enterprise :
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Personnalisation de Liferay
Des thmes peuvent ensuite tre appliqus aux Communauts ou individuellement aux pages. La personnalisation des pages propres une communaut ou propre lutilisateur est similaire. Ladministrateur modie les pages des communauts de la mme manire quun utilisateur modie sa page personnelle (ou les pages sur lesquelles il dispose de droits de modication).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Cette hirarchie pourra tre parcourue trs facilement grce lajout sur les pages du portlet de navigation qui permet dobtenir des liens vers les pages enfants.
Claude Duvallet 19/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
La personnalisation des pages seffectue directement depuis la page en question. En effet, en disposant des droits ncessaires, on peut :
modier larrangement de la page en dplaant les portlets lintrieur de celle-ci avec un simple drag & drop, ajouter des portlets en faisant apparatre la liste des portlets disponibles grce loutil Add Content .
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Un systme basique de gestion de contenu (CMS) appel Journal est prsent dans Liferay. Loin des vrais systmes de CMS, il permet simplement de crer des articles et de les publier sur des pages. On peut ainsi raliser simplement un petit site statique. Pour grer les articles, on utilise des Structures. Elles permettent de dnir quels lments composeront larticle (par exemple, un texte reprsentant le titre, une image et un contenu HTML qui reprsentera le corps de larticle).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Pour terminer, il suft dajouter un portlet Journal Content sur la page o lon souhaite afcher larticle pour quil apparaisse. Il est noter que les articles peuvent tre localiss et peuvent donc sadapter la langue choisie par lutilisateur. La page daccueil de Liferay (http://www.liferay.com) est un bon exemple de lutilisation de Journal.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Loutil Alfresco peut tre intgr au portail Liferay an de remplir diffrentes fonctions dans le cadre de la gestion lectronique de document. Un portlet client est disponible dans Liferay permettant de se connecter un serveur Alfresco.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Wiki : Le portlet wiki permet tous les utilisateurs de crer ou modier des pages.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Sondages
Un portlet Poll permet de crer des sondages. Ceux-ci pourront tre visible pour quelques utilisateurs seulement, toute un communaut ou mme par les visiteurs du site.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Business intelligence
Depuis 2007, Liferay propose un Portlet Liferay reporting Portlet . Un systme de logging (Log4j) est prsent. Il est congurable laide dun simple chier xml. Le portlet Admin permet galement de modier les niveaux de dclenchement des logs.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Perspectives (1/2)
Aprs 10 annes dexistence, Liferay nous offre un produit trs abouti. Les fonctionnalits de base (gestion des utilisateurs, dploiement de nouveaux portlets,...) sont solides et bien conues. Laspect visuel est trs russi et les portlets fournis sont nombreux et fonctionnels. Les pistes de dveloppement actuelles vont vers encore plus de fonctionnalits offertes dans le package de base. Si linstallation et la conguration gnrale sont bien documentes, en revanche la documentation de certains portlets est lgre et peut conduire des difcults congurer certaines fonctionnalits.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Perspectives (2/2)
Avec un portail fonctionnel et utilisable ds linstallation mais possdant une base solide pour lintgration et le dveloppement de nouveaux portlets, Liferay offre un trs bon outil capable de se dployer rapidement et de sadapter des besoins complexes. Liferay est sans aucun doute le mieux ni des portails Open Source mais il lui manque encore des connecteurs vers les applications du SI et les outils de reporting pour faire face ses concurrents propritaires. Mme si depuis la sortie de la version 6, la communaut semble saccrotre, elle nest pas encore trs importante. Elle est malgr tout trs active notamment grce lappui de la socit Liferay.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
La plupart des paramtres non administrables sont inclus dans un chier unique.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Java
Procdure dinstallation standard. V1.5 ou 1.6
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Pour dmarrer :
Aller dans le rpertoire (tomcat)/bin Excuter startup.bat Une fentre doit souvrir, avec la sortie standard de Tomcat.
Pour arrter :
Aller dans le rpertoire (tomcat)/bin Excuter shutdown.bat
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le chier liferay-display.xml recense les portlets dorigine de Liferay, qui peuvent tre ajoutes une page du portail :
Dans (tomcat)/webapps/ROOT/WEB-INF/. Ensemble des portlets disponibles depuis le menu contextuel, Ajouter une application.
Dans ce chier :
Dans la catgorie category.cms (au dbut), rajouter la ligne suivante <portlet id="15" />
Cela nous permettra dajouter ladministration des contenus web (id=15), dans des pages accs restreint.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
JSR-168 est la spcication 1.0 des Portlets ? Cre suite au besoin davoir une spcication pour lafchage multiple de plusieurs applications sur une mme page JSR-168 dnit le cycle de vie dun Portlet ainsi que ses caractristiques
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Une Portlet est un composant web qui met des requtes et gnre du contenu dynamique Le contenu gnr par un Portlet est aussi appel Fragment (i.e. HTML, XHTML, WML). Il peut tre assembl avec dautres contenus pour former un document complet
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Exemple de portlets
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets sont diffrentes des Servlets du moment o elles ont plus quun type de requte : Phases. Servlet : la mthode service() traite toutes les requtes. JSR-168 (Portlet 1.0) possde deux phases :
Phase de prsentation (Render Phase) : excute chaque fois que la portlet a besoin dtre redessine Phase daction (Action Phase) : appele comme rsultat dune ActionURL. Permet la portlet deffectuer du traitement spcique pour changer dtat, visible quand la portlet est redessine.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
La mthode init () : elle initialise la Portlet. La mthode processAction () : elle est appele quand lutilisateur lance une action. La mthode render () : elle dessine le contenu. La mthode destroy : elle libre lobjet Portlet (Garbage collection).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Dmarrage au mois de Novembre 2005 (3 ans aprs la version 1.0). Mene par IBM et rvise par les principaux vendeurs de solutions Portail (Liferay inclus). Approuve et publie au mois le 12 Juin 2008. Conserve la compatibilit avec les portlets 1.0 (JSR-168). Ajoute de nouvelles fonctionnalits en se basant sur lexprience des diffrents vendeurs de solutions Portail (dont Liferay).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les nouveauts
Communication Inter-Portlets standardise :
Paramtres publics. vnements.
Resource serving :
Support dAJAX. Support des donnes binaires.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
La mthode la plus simple pour une communication Inter-Portlets (IPC). Un dveloppeur peut dclarer plusieurs paramtres publics pour une application Portlet dans le chier portlet.xml. <portlet-app> <public-render-parameter> <identifier>foo</identifier> <qname xmlns:x="http://foo.com/p">x:foo2</qname> <public-render-parameter> . . . </portlet-app> Ne peuvent accder ces paramtres que les portlets au sein de lapplication.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les paramtres public sont fusionns avec les paramtres rguliers. Ils peuvent donc tres lus en utilisant getParameter(name) et getParameterMap(). Un portlet peut effacer un paramtre public en invoquant :
Response.removePublicRenderParameter(name) portletURL.removePublicRenderParameter(name)
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Permet la communication entre portlet dans diffrentes applications Optionnellement, le conteneur peut aussi gnrer ses propres vnements
Pas dvnements conteneur spciques standardiss pour le moment.
Les portlets peuvent publier un vnement depuis leur propre code de processAction() :
actionResponse.setevent(event, eventPayLoad)
Claude Duvallet 61/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Il faut noter que lordre de production des vnements nest pas garanti. Exemple de traitement dvnement :
public void processEvent(EventRequest request, EventResponse response) throws PortletException, IOException { String eventName = request.getEvent().getQName().toString() ; if(eventName.equals(...)) { ... } else if (eventName.equals(...)) { ... } }
Claude Duvallet 62/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Par contre, cest plus propre et plus facile dutiliser les annotations (ncessite un hritage de GenericPortlet) :
/** * Cette mthode reoit lvnement "MyEvent" * @ProcessEvent (qname={http://foo.com}MyEvent) */ public void processMyEvent(EventRequest request, EventResponse response) throws PortletException, IOException { ... }
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le Resource Serving
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les ltres
Ce sont des composants Java permettant dajouter des traitements en amont et en aval de lexcution des portlets. Il sont postrieurs aux ltres de la spcication des Servlets.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Elles offrent des caractristiques supplmentaires par rapport aux Servlets. Modes de Portlets (Portlet Modes). tats dcran (Window States). Prfrences Portlet.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Chaque portlet a un mode courant indiquant la fonction quelle est en train de raliser. Tous les portails Standard JAVA doivent supporter les diffrents modes : Edit, View et Help. Les modes dun Portlet sont dnis dans portlet.xml. Les dveloppeurs peuvent crer leurs propres modes.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Liferay permet dajouter deux descripteurs de dploiement qui tendent portlet.xml : liferay-portlet.xml. liferay-display.xml. Optionnels mais permettent dimplmenter des fonctionnalits spcique Liferay Un chier liferay-plugin-package.properties pour :
Renseigner les versions de Liferay compatibles avec la portlet. Etc.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le chier liferay-portlet.xml
<?xml version="1.0"?> <!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 5.0.0//EN" "http://www.liferay.com/dtd/liferay-portlet-app_5_0_0.dtd"> <liferay-portlet-app> <portlet> <portlet-name>jsf-portlet</portlet-name> <instanceable>true</instanceable> <render-weight>1</render-weight> <ajaxable>true</ajaxable> </portlet> <role-mapper> <role-name>administrator</role-name> <role-link>Administrator</role-link> </role-mapper> <role-mapper> <role-name>guest</role-name> <role-link>Guest</role-link> </role-mapper> </liferay-portlet-app>
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le chier liferay-display.xml
<?xml version="1.0"?> <!DOCTYPE display PUBLIC "-//Liferay//DTD Display 5.0.0//EN" "http://www.liferay.com/dtd/liferay-display_5_0_0.dtd"> <display> <category name="category.sample"> <portlet id="jsf-portlet"/> </category> </display>
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Bilan
Tous les produits, de type portail, majeurs du marchs adhrent la spcication Java pour les Portlets (1.0 ou 2.0). Liferay Portal 4.x Portlet 1.0 (JSR-168). Liferay Portal 5.x Portlet 2.0 (JSR-286). Toute connaissance acquise autour de la spcication des Portlets Java peut tre applique pour nimporte quel autre produit commercial ou libre disponible sur le march.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Il est frquent, an de rpondre de la manire la plus adapte qui soit, davoir modier le comportement dorigine du portail.
Par paramtrage. Par modication.
Ces modications, parfois trs simples, peuvent devenir une relle difcult au moment de procder une monte de version du logiciel :
si elles ne sont pas effectues dans un cadre normalis et conforme la stratgie voulue par la communaut Liferay.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le dploiement de plugins se fait la plupart du temps chaud dans le rpertoire deploy. Le dploiement dextension ou de patch se fait la plupart dans les rpertoires librairie ou webapps.
Claude Duvallet 74/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les Hooks
Les hooks permettent la ralisation :
dvnements sur : le dmarrage de lapplication. le login (pr et post). les services (pr et post). de chiers de traductions (language bundle). dvnements sur le modle (en particulier des entits comme User, Account, Layout...) : create update delete de JSP personnalises : les JSP dorigine peuvent tre surcharges.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Environnement de dveloppement
Composants requis sur le poste : JDK 1.5 ou plus. Un IDE Java adapt :
Netbeans, Eclipse JEE (conseill).
Liferay (bundle Tomcat, JBoss...). (optionnel) une base locale (gnralement MySQL) :
Pour consulter la base de donnes avec un browser sql. Sinon, jetez il faut regarder les chiers dans data/hsql.
(optionnel) Ant :
pour le dploiement via ligne de commande
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le "maximum de logique de mise en forme" doit tre plac dans la CSS principale :
Styles CSS (chier custom.css, voire les autres si besoin). Et dans les templates .vm.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Organisation Encapsule une communaut Dispose dautres attributs Une organisation peut avoir une organisation parente.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Permissions Rles
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Pour les thmes et la prsentations des plugins, il est possible dutiliser des modles de disposition.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Autres actions
Administration du serveur :
Prsente un intrt pour la surveillance et lanalyse, mais aussi pour des actions ponctuelles.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Prsentation de JBPM
Projet rachet par JBoss. Licence apache. Lun (sinon le) des projets de workow le mieux document. Trs lger : 2 jar indpendants, ne ncessite pas lutilisation dun serveur dapplication (ex : JBoss). Le seul supporter la plupart des langues (XPDL, BPEL, etc.). Enrichi XPDL pour donner JDPL (JBPM Process Denition Language).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les outils dadministration et monitoring workow sont limits dans la version actuelle.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
JBoss jBPM facilite les modications des processus mtiers complexes, ce qui amliore signicativement la souplesse de lentreprise. Le projet est hberg par la communaut JBoss et fait partie du stack middleware JEMS propos par JBoss Group. RedHat est le leader du projet avec une quipe de dveloppement partag entre la Belgique et les tats Unis. En plus de la communaut anime par JBoss Group, le projet est actif avec des utilisateurs et validateurs en Europe et tats-Unis.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Robustesse et performance :
JBPM est dploy en production dans des organisations appartenant des domaines dactivits trs diffrents tels que les nances ou la sant.
Documentation :
La documentation en Anglais est complte. Elle couvre linstallation du produit, les concepts de base, les exemples dutilisation ainsi que la dnition des processus et les concepts lis la programmation. Elle est disponible sous forme dun document html.
Claude Duvallet 98/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Intgration :
JBPM peut tre intgr dans des systmes trs lgers type Java : application Java stand-alone, ou application web ainsi que dans systmes plus complexes type
J2EE.
Lutilisation de JBPM dans des solutions non-java ncessite le dveloppement dune couche de communication web services.
Claude Duvallet 99/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Quelques exemples :
Un wizard, Un formulaire suivi dune validation.
Certaines applications mtiers ont une ncessit particulire de devoir sadapter aux besoins dune entreprise. Par exemple, tout gestionnaire de contenu (GED, CMS)
Rarement le mme processus de validation. Un nombre de validation diffrents, par des acteurs diffrents (un relecteur, suivi dune validation par un autre journaliste, puis une autre validation par un directeur de programme).
Claude Duvallet 100/110 LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Quelques constats :
Les dveloppeurs sont rarement spcialiss mtier. Les consultants mtiers ont rarement des connaissances techniques sufsantes pour manipuler du code.
Les ides :
Cration de moteur de workow permettant un dcoupage entre les parties techniques et les parties mtiers.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les ides :
Grer, archiver les instances de workow. Grer les donnes manipules au sein dune instance de workow. Orchestrer les diffrents modules que composent une instance de workow (briques mtiers).
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les WebFlow
Les webow (ou pageow) sont un cas particulier des workow dans le cas dune utilisation dun site web. Dcris lenchanement des pages. Pas de persistance systmatique. Une brique mtier (au sens workow) peut tre compos dun webow lorsquil y a interaction avec lutilisateur via une interface web.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Lquipe scurit travaille sur le workow pour lapplication de PKI EJBCA, pourquoi ? Aucun client na le mme besoin mtier. Dans le cas dune demande de certicat, il peut exister de trs nombreux points dentre diffrents, et des cinmatiques totalement diffrentes en fonction du point dentre. Les workow mtiers peuvent voluer au sein dun client, do lide de faire une application trs modulaire.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Dans un premier temps, il est question de dnir un langage permettant de reprsenter le workow, malheureusement il en existe un certains nombres :
BPM (Business Process Management) XPDL (XML Process Denition Language) BPEL (Business Process Execution Language)
La dnition de ces langages permettent dutiliser indpendamment diffrents moteurs de workow. Permet galement la cration dinterface graphique permettant la manipulation des workow.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Le langage JDPL
JBPM Process Denition Language Un workow est compos dun ensemble de node :
Un (unique) startNode : tape lorigine de la cration de linstance du workow. TaskNode : tape en attente dune interaction avec lutilisateur. State : tape en attente dune action extrieure (webservices, attente de rponse dun composant externe lapplication). Un ou plusieurs endNode : archivage de linstance du workow et libration des ressources.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Fork : sparation du workow en N branches devant se runir via un node de type join DecisionNode : condition sur une variable de linstance de workow (utilisation dun langage simple ou dlgation une classe java). Node : action interne lapplication mais nayant pas dinteraction ni avec lutilisateur ni avec un lment externe (exemple : notication par courriel). On relie tous ces nodes par des transitions, reprsentant le changement dun node un autre au sein de linstance.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Pour information : un vnement nest pas li qu une seule action, mais peut dclencher plusieurs actions.
LIFERAY
Les portlets Liferay : personnalisation Les thmes de prsentation La gestion des droits Le moteur de workow jBPM
Trs important : un node na pas connatre lexistence des autres nodes, il manipule un ensemble de donnes dans un contexte dexcution. Cest--dire :
Il ny a pas de variables directement passes dun node lautre Un node utilise linstance du workow pour manipuler ses donnes Limitation possible de la visibilits des variables en utilisant le mcanisme des swimlanes
LIFERAY