<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Le Touilleur Express &#187; portail</title>
	<atom:link href="http://www.touilleur-express.fr/tag/portail/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.touilleur-express.fr</link>
	<description>Blog sur Java, le métier de développeur et la vie de freelance par Nicolas Martignole</description>
	<lastBuildDate>Wed, 08 Feb 2012 11:54:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>GateIn et Liferay, les portails préparent l&#039;entreprise de 2015</title>
		<link>http://www.touilleur-express.fr/2009/11/03/gatein-liferay-portail/</link>
		<comments>http://www.touilleur-express.fr/2009/11/03/gatein-liferay-portail/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 21:48:42 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[exo]]></category>
		<category><![CDATA[gatein]]></category>
		<category><![CDATA[portail]]></category>

		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=2221</guid>
		<description><![CDATA[Si vous avez suivi les sujets du moment sur le Touilleur Express, vous savez qu&#8217;en ce moment je travaille sur les Portails Java Open-Source (Liferay, eXo Portal et Jahia). Après quelques articles sur les Portlets et les Portails, j&#8217;ai eu la chance de participer la semaine dernière à la formation eXo Portal organisée par Julien Viet. Il est temps de vous parler un peu de GateIn. Dans cet article j&#8217;ai essayé d&#8217;avoir une vision plus globale de ce que les Portails peuvent nous apporter. Nous reviendrons dans d&#8217;autres articles sur ...]]></description>
			<content:encoded><![CDATA[<p>Si vous avez suivi les sujets du moment sur le Touilleur Express, vous savez qu&#8217;en ce moment je travaille sur les Portails Java Open-Source (Liferay, eXo Portal et Jahia). Après <a href="http://www.touilleur-express.fr/tag/portail/">quelques articles</a> sur les Portlets et les Portails, j&#8217;ai eu la chance de participer la semaine dernière à la formation eXo Portal organisée par Julien Viet. Il est temps de vous parler un peu de GateIn. Dans cet article j&#8217;ai essayé d&#8217;avoir une vision plus globale de ce que les Portails peuvent nous apporter. Nous reviendrons dans d&#8217;autres articles sur <a href="http://www.jboss.org/gatein/">GateIn</a> pour toi développeur. Là j&#8217;ai envie de parler à toi, le Client final ou le Visionnaire, histoire de vous parler un peu de ce qui nous attend.</p>
<p>Tout d&#8217;abord, regardons un peu le marché des portails d&#8217;intégrations. L&#8217;étude &laquo;&nbsp;<a href="http://www.gartner.com/technology/media-products/reprints/oracle/article95/article95.html">Magic Quadrant for Horizontal Portals</a>&nbsp;&raquo; de 2009 est intéressante, car elle donne un état du marché, et quelques indications sur les acteurs du marché. 2 phrases retiennent mon attention :  &laquo;&nbsp;<em>By 2011, Gartner expects at least 15% of new enterprise portal projects in Global 2000 firms to use open-source horizontal portal frameworks.</em>&nbsp;&raquo; et &laquo;&nbsp;<em>By 2014, horizontal portal products based on portal containers will be used for no more than 60% of new enterprise portal projects.</em>&laquo;&nbsp;.<br />
En 2014, Gartner estime à 60% le nombre de nouveaux projets basés sur les portails d&#8217;intégration&#8230; C&#8217;est dans 5 ans&#8230; allo ?</p>
<p>Le marché des portails est actuellement dominé par IBM, Oracle et Microsoft. Cependant, un effet bénéfique de la crise, c&#8217;est que les budgets d&#8217;investissement pour les portails internes ont connu un sacré ralentissement en 2009. Cela a pour effet de profiter directement à des acteurs comme Liferay, RedHat et eXo Platform. Le rapprochement entre eXo Platform SAS et Red Hat Inc. est certainement un signe fort qu&#8217;en 2010, ces deux là viendront perturber le marché avec un objectif à 5 ans très clair : devenir la première solution open-source java de portails d&#8217;entreprise. Liferay n&#8217;a qu&#8217;à bien se tenir.</p>
<p>La semaine passée j&#8217;étais en formation à Paris avec Julien Viet, ancien de RedHat et maintenant Lead Developer chez eXo Platform, sur le Portail. La formation s&#8217;est déroulée sur 2 jours. Elle permet tout d&#8217;abord de comprendre la culture et le positionnement des Portails. Lorsque nous parlons de Portails, certains en ont une vision très Web. Ils imaginent des mashups, une page à la iGoogle. D&#8217;autres en ont une vision plutôt orientée middleware/service. Les portails sont des ponts entre différents services et une application Web. Et c&#8217;est cette culture qui doit, à mon avis, encore être travaillée. Liferay a quelque chose que son voisin n&#8217;a pas encore : une sacré interface prête à l&#8217;emploi avec ses quelques 60 petites applications. Son plus gros avantage et aussi son plus gros défaut. Petites applications, pas produits.</p>
<p>Liferay descend du monde du Web, et s&#8217;adresse maintenant à l&#8217;infrastructure. Au contraire, JBoss Portal est un logiciel qui vient du monde du middleware, avec un socle robuste, un moteur d&#8217;exécution proche quelque part d&#8217;un serveur d&#8217;application. eXo Platform propose une vision plus produit, qui n&#8217;est ni du Web Portlet, ni du MiddleWare, mais ce que j&#8217;appellerais un moteur d&#8217;execution pour applications webs. C&#8217;est peut-être le code génétique de <a href="http://www.jboss.org/gatein/">GateIn</a>.</p>
<p><a href="http://www.jboss.org/gatein/">GateIn</a> est taillé pour être un moteur d&#8217;hébergement d&#8217;applications, comme JBoss Portal. Mais il est aussi structuré pour proposer de vrais produits plutôt qu&#8217;une boîte à Portlets comme chez Liferay.<br />
GateIn est le moteur de départ sur lequel nous allons déployer d&#8217;une part les produits eXo Platform, mais aussi votre propre application portail. Les produits eXo Platform permettent de gérer du contenu (eXo WCM), de gérer des documents (eXo DMS), de configurer finement la validation (eXo Workflow), de créer des forums et des FAQs intelligentes (eXo KS) et propose aussi une suite d&#8217;outils collaboratifs (eXo CS). Encore une fois, là où Liferay propose des Portlets, eXo Platform propose de réels produits, avec la documentation et les équipes produits, avec un service plus adapté à l&#8217;entreprise.</p>
<p>Maintenant attention, il semble que la bonne pratique est de se baser sur des solutions plus complètes dès lors que les besoins de base ne sont pas couverts par le Portail. Liferay dès le guide de l&#8217;utilisateur, vous oriente vers <a href="http://www.alfresco.com/fr/">Alfresco</a> si vous souhaitez utiliser une solution de publication de contenu complète (CMS). Et eXo Portal fonctionne aussi d&#8217;ailleurs très bien avec <a href="http://www.alfresco.com/">Alfresco</a>.</p>
<p>On comprend donc que l&#8217;énergie maintenant n&#8217;est plus dans le développement d&#8217;une application web avec son authentification, sa gestion de la mise en page, son cycle de vie&#8230; Non j&#8217;ai presque envie de croire que c&#8217;est terminé.</p>
<p>Liferay et GateIn vous font regarder vers une nouvelle direction, qui me semble plus intelligente pour l&#8217;entreprise : l&#8217;intégration d&#8217;application dans un portail plutôt que l&#8217;intégration d&#8217;un service dans une application Web. Les produits d&#8217;eXo Platform seront tous bientôt compatibles avec <a href="http://www.jboss.org/gatein">GateIn</a>, qui se positionne comme un moteur d&#8217;exécution, une plate-forme, et la porte d&#8217;entrée vers le monde de l&#8217;entreprise.</p>
<p>Pour revenir à l&#8217;intégration de solutions existants, prenez <a href="http://www.sugarcrm.com/crm/">SugarCRM</a> par exemple pour la gestion de la relation clientèle. Une fois intégré avec un moteur de publication de contenu, voilà votre site Internet d&#8217;entreprise avec son extranet. Si bien sûr votre métier est de développer des applications de gestion, peut-être que cela vous semble abstrait. Mais si votre métier est de développer des solutions webs d&#8217;entreprise, et bien cela devrait vous parler.</p>
<p>Quelle entreprise en 2015 pourra se passer d&#8217;un site Internet, avec un extranet sécurisé pour ses employés, un outil de gestion de la clientèle, un Wiki, des Forums, et un moteur de publication pour les pages ?<br />
Dîtes-moi qui pourrait se passer de ces outils ?</p>
<p>Rendez-vous maintenant pour construire ensemble pas-à-pas un nouvel écosystème d&#8217;applications dans GateIn. Première étape : installer GateIn, faire le tour du propriétaire, puis ensuite commencer à mettre ses premières applications.</p>
<p>A dans 5 ans ? ou à demain ?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2009/11/03/gatein-liferay-portail/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Séminaire sur les portails open-source chez Ippon Technologies</title>
		<link>http://www.touilleur-express.fr/2009/10/10/seminaire-sur-les-portails-open-source-chez-ippon-technologies/</link>
		<comments>http://www.touilleur-express.fr/2009/10/10/seminaire-sur-les-portails-open-source-chez-ippon-technologies/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 14:59:26 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[exo]]></category>
		<category><![CDATA[liferay]]></category>
		<category><![CDATA[portail]]></category>

		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=2057</guid>
		<description><![CDATA[Jeudi matin j&#8217;ai assisté à un séminaire sur les Portails Java Open-Source  organisé par Ippon Technologies dans les locaux de Sup Info à Paris. Après une présentation des Portails, de la spécification des Portlets et des différents types de projets rencontrés, nous avons eu le témoignage d&#8217;un client eXo Portal puis d&#8217;un client Liferay. Le tout s&#8217;est terminé avec une séance de questions/réponses.
Bertrand Pinel d&#8217;Ippon Technologies a tout d&#8217;abord présenté un état de l&#8217;art des Portails Open-Source. La présentation débute par une explication du mot &#171;&#160;Portail&#160;&#187;. Car chacun a ...]]></description>
			<content:encoded><![CDATA[<p>Jeudi matin j&#8217;ai assisté à un séminaire sur les Portails Java Open-Source  organisé par <a href="http://www.ippon.fr/infoglueDeliverLive/ViewPage.action?siteNodeId=30&#038;languageId=4&#038;contentId=-1">Ippon Technologies</a> dans les locaux de Sup Info à Paris. Après une présentation des Portails, de la spécification des Portlets et des différents types de projets rencontrés, nous avons eu le témoignage d&#8217;un client eXo Portal puis d&#8217;un client Liferay. Le tout s&#8217;est terminé avec une séance de questions/réponses.</p>
<p>Bertrand Pinel d&#8217;Ippon Technologies a tout d&#8217;abord présenté un état de l&#8217;art des Portails Open-Source. La présentation débute par une explication du mot &laquo;&nbsp;Portail&nbsp;&raquo;. Car chacun a une image en tête. Certains voient un portail à la iGoogle ou la NetVibes, d&#8217;autres voient une page comme Amazon.com, et d&#8217;autres voient un portail en fer forgé. Bon pour le groupe 3 : un Portail Java est un logiciel qui permet d&#8217;agréger du contenu, et d&#8217;agir comme un proxy vers l&#8217;information. Les Portlets sont en quelques sortes des applications légères qui, lorsqu&#8217;elles sont placées ensembles, créent un service sur une page. Comme tout ceci est un peu abstrait, je vous promets de vous raconter une vraie histoire d&#8217;ici à la fin de l&#8217;année sur le Touilleur Express.</p>
<p>Un Portail est aussi un moyen de proposer des services communs comme l&#8217;authentification, la gestion des droits des utilisateurs, la possibilité de personnaliser son interface, ou de contribuer avec du contenu. Un portail est aussi un socle technique sur lequel vous pouvez faire fonctionner des services à valeur ajoutée comme un gestionnaire de contenu (CMS) ou un Wiki par exemple. Donc on retiendra surtout qu&#8217;un Portail est le chassis de la voiture, et que ce sont les services que l&#8217;on pose dessus qui en font ensuite &laquo;&nbsp;un portail de contenu&nbsp;&raquo; ou &laquo;&nbsp;un intranet&nbsp;&raquo; ou encore &laquo;&nbsp;une page d&#8217;accueil de notre site institutionnel&nbsp;&raquo;. Vous suivez ?</p>
<p>Tout le monde fait du portail&#8230; Mais tout le monde ne fait pas du Portail, avec un P majuscule. Les éditeurs traditionnels comme Oracle et IBM sont certes présents sur ce marché. Mais ce sont des constructeurs qui viennent du monde du middleware. A l&#8217;opposé, dans le monde de l&#8217;open-source il y a d&#8217;autres acteurs qui ne font que cela, et qui le font mieux d&#8217;après Bertrand Pinel. Avis que je partage de plus en plus.</p>
<p>Cette carte de métro provient du site &laquo;&nbsp;CMS Watch&nbsp;&raquo;. Elle présente l&#8217;ensemble des Portails, des CMS, des outils de publication de contenu.<br />
(<a href="http://www.cmswatch.com/images/CMS-Watch-subway-map-2009-large.jpg">voir l&#8217;image en grande taille</a>)<br />
<img src="http://www.touilleur-express.fr/wp-content/cms_watch_portal.jpg" alt="cms_watch_portal" title="cms_watch_portal" width="500" height="387" class="alignnone size-full wp-image-2058" /></p>
<p>Alfresco et Nuxeo sont sur la branche &laquo;&nbsp;Enterprise Content Managment&nbsp;&raquo; alors que les Portails d&#8217;Entreprise sont représentés par JBoss Portal, eXo Portal, Liferay ou uPortal par exemple. Je trouve ce schéma très intéressant pour comprendre comment chacun des acteurs du marché se positionne. Et finalement, est-ce qu&#8217;une approche modulable à la eXo n&#8217;est pas plus intéressante qu&#8217;une approche tout ou rien à la Liferay ? Je crayonne sur mon bloc&#8230; &laquo;&nbsp;Modularité = Flexibilité = eXo&nbsp;&raquo;.</p>
<p>Nous parlons ensuite de licences, LifeRay comme eXo Portal sont open-sources. Puis ensuite quelque chose qui me parle en ce moment : est-il possible d&#8217;identifier les attentes des utilisateurs selon leur métier ? Un utilisateur final demande de la facilité d&#8217;utilisation. Une interface intuitive, une ergonomie, une simplicité pour qu&#8217;il soit autonome. Un administrateur de contenu demande des outils d&#8217;administration pratiques et simples. Un admin technique aimerait des Portlets d&#8217;administration afin de visualiser la santé de son portail. Un responsable marketing aimerait voir si cette portlet de simulation de crédit fonctionne bien ou non&#8230; Bref ce qui est très intéressant c&#8217;est qu&#8217;il faut penser aux différents types d&#8217;utilisateur. Liferay propose ainsi un grand nombre de portlets &laquo;&nbsp;out of the box&nbsp;&raquo;, ce qui permet de commencer à s&#8217;en servir rapidement. Dans son Control Panel, un onglet permet de voir aussi la charge mémoire du serveur. Patrice Lamarque mentionne l&#8217;utilisation de JMX du côté d&#8217;eXo Portal, mais je ne me souviens pas avoir vu pour l&#8217;instant de Portlets d&#8217;administration.</p>
<p>Bertrand Pinel explique aussi que le choix d&#8217;un portail doit s&#8217;effectuer par rapport aux respects des standards, comme la JSR-168 et la JSR-286 pour les Portlets, mais aussi la JSR-170 pour tout ce qui est Java Content Repository. Au passage concernant les Portlets, il est important de comprendre qu&#8217;en terme de rendu, une Portlet ce n&#8217;est pas qu&#8217;une petite boite avec un bouton &laquo;&nbsp;maximiser&nbsp;&raquo; et &laquo;&nbsp;fermer&nbsp;&raquo;. Une Portlet peu être complétement transparente, le rendu ce n&#8217;est que du CSS avec un DIV, et le Portail vous permet bien entendu de ne pas afficher la petite boite autour d&#8217;une Portlet. D&#8217;ailleurs je trouve dommage de voir par défaut un habillage de ce style dans Liferay, c&#8217;est trop réducteur.<br />
Donc retenez qu&#8217;une Portlet est un proxy du côté du serveur qui est capable de gérer des événements pour les faire passer à d&#8217;autres Portlets. Du côté de l&#8217;enveloppe c&#8217;est le Portail, donc son thème ou sa skin. Et à l&#8217;intérieur de la Portlet, c&#8217;est vous avec votre technologie Web : Wicket, JSF, GWT ou JSP par exemple. Bien entendu si vous voulez que votre Portlet ait le look de ses voisines, il faut alors utiliser les feuilles de style du Portail. Mais Liferay par exemple est assez bien fait car il est capable d&#8217;habiller votre Portlet si vous ne surchargez pas trop les styles. eXo Portal aussi, le résultat est similaire des deux côtés.</p>
<p>Les slides suivants parlent d&#8217;architecture. Une Portlet est une mini-application Web embarquée qui ne peut vivre que dans un Portail. Ensuite, il est intéressant de voir que l&#8217;on peut soit faire une application complète avec accès à une base de données, soit une Portlet plus simple qui consommerait des services distants (EJB, REST), soit simplement une Portlet de réaffichage d&#8217;un contenu HTML distant (clipping, web proxy et WSRP). Quoi tu veux faire une Portlet avec une IFrame ? Oui monsieur, c&#8217;est possible. Imaginez un produit en fin de vie qui tourne sur un autre serveur Web. Avec ce système de clipping il est possible d&#8217;aller chercher des pages Webs distantes pour les affichers dans le Portail. Bien entendu ce n&#8217;est pas très élégant, mais ça marche.<br />
WSRP est une spécification qui permet à 2 portails de s&#8217;échanger du contenu. Un portail expose son contenu avec du WSRP et un autre portail consomme ce contenu. L&#8217;usage que je vois pour l&#8217;instant est le suivant : imaginons que votre architecture est découpée en plusieurs tiers. Une DMZ Internet avec les serveurs Webs et une deuxième DMZ avec les serveurs d&#8217;applications. Entre les deux, des EJB. Bref lorsque vous débarquez avec votre Portail, vous voilà bien embêté. Une idée serait d&#8217;installer un Portail dans la zone Internet, et un deuxième Portail dans la zone Service, et de faire communiquer les deux via WSRP. Je ne vous cache pas que cette architecture au final ne résout pas la sécurité, mais permet d&#8217;alimenter le portefeuille de l&#8217;éditeur de logiciel et du constructeur de machine. Mais bon, lorsque l&#8217;on ne peut pas réécrire d&#8217;anciens services à la sauce EJB 2.1, je dis : pourquoi pas ?</p>
<p>Voyons maintenant le marché des Portails Open-Source :<br />
<img src="http://www.touilleur-express.fr/wp-content/capture01.jpg" alt="capture01" title="capture01" width="694" height="511" class="alignnone size-full wp-image-2059" /></p>
<p>La suite présente ensuite le projet <a href="http://www.jahia.org/cms">Jahia</a> qui est un gestionnaire de contenu très bien fait, à la Joomla en PHP par exemple. Je le testerai pour vous en reparler.</p>
<p>JBoss Portal ensuite, est la solution de Portail de RedHat JBoss. Un peu austère, mais avec un moteur technique vraiment très puissant, il manquait à JBoss une couche applicative.</p>
<p>eXo Portal par la société eXo Platform ensuite. Avec une centaine de collaborateurs, eXo est présent sur ce marché depuis de longues années. Membre du JCP sur la JSR-168 et la JSR-286, comme JBoss, les équipes d&#8217;eXo proposent en plus des solutions applicatives prêtes à l&#8217;emploi et modulaire.</p>
<p>J&#8217;ai appris que <a href="http://www.touilleur-express.fr/2008/12/03/petit-compte-rendu-de-la-soiree-jboss-au-paris-jug/">Sacha Labourey</a> (ex JBoss) avait rejoint le Board of Advisors de l&#8217;équipe d&#8217;eXo Platform (<a href="http://www.rumeurpublique.fr/rp-net/tous-les-communiques/tous-les-communiques/fiche-communique/exo-platform-part-a-la-conquete-du-marche-nord-americain-et-presente-son-board-of-advisors/">voir le communiqué de presse ici</a>). Quand on sait qui est Sacha, je peux vous dire que c&#8217;est un peu comme si David Beckham venait jouer dans votre club de foot. C&#8217;est juste énorme. Il est certain que l&#8217;on va entendre parler d&#8217;eXo Platform dans les mois qui viennent.</p>
<p>Bertrand Pinel parle ensuite du projet GateIn, qui est le rapprochement des équipes de JBoss Portal et des équipes d&#8217;eXo Portal. A priori d&#8217;après les rumeurs, la version Beta 2 de GateIn devrait sortir d&#8217;ici quelques semaines. Les équipes travaillent en ce moment à fond, et je crois que je le testerai pour vous en reparler un peu plus tard.</p>
<p>Liferay ensuite est présenté. Avec 90 000 téléchargements par mois, c&#8217;est clairement un acteur très important, très populaire. Ippon Technologies a une très bonne expertise sur LifeRay, Geoffray Gruel était la semaine dernière en Allemagne au Symposium Liferay. Installation facile, communauté importante, LifeRay manque un peu de présence en France par rapport à eXo Platform, mais se rattrape avec la taille de la communauté. Bref c&#8217;est une solution à étudier. Un point où j&#8217;émets une réserve, c&#8217;est le côté &laquo;&nbsp;tout-ou-rien&nbsp;&raquo; où l&#8217;on installe LifeRay, puis ensuite on découvre un peu les Portlets, mais on ne parle pas de produits. J&#8217;ai compris que chez eXo Platform, il y a de réels produits, avec des chefs de produits comme Patrice Lamarque qui était présent. C&#8217;est intéressant car cette approche produit est plus ouverte. Là où LifeRay c&#8217;est la suite Office, eXo semble proposer des briques selon vos besoins. Bon je jette un peu trop de fleurs sur eXo Platform alors je vais dire un truc négatif : je trouve que LifeRay est mieux terminé au niveau de l&#8217;interface utilisateur qu&#8217;eXo Portal 2.5. Plus intuitif. Maintenant avec le nouveau GateIn, j&#8217;ai aussi l&#8217;impression que dans les mois qui viennent, les gens d&#8217;eXo vont repasser devant.</p>
<p>Les points forts de Liferay ensuite : seul portail open-source cité en 2008  par le Gartner, sa licence MIT permet de changer le code, sans être tenu de le reverser dans le domaine publique. eXo Portal est distribué en licence <a href="http://www.exoplatform.com/portal/public/website/product/Licensing">Affero GPL</a>. Vous pouvez changer le code, le partager, le distribuer, mais je crois que vous êtes tenu de le faire. Je ne sais pas vraiment la différence, mais Bertrand Pinel semble dire que Liferay vous permet plus de faire ce que vous voulez qu&#8217;eXo.</p>
<p><strong>Les cas d&#8217;utilisation</strong><br />
Cette partie présente un retour sur expérience avec quelques exemples de projet type réalisé avec des Portails:<br />
- Intranet usine à sites<br />
- Bureau Virtuel<br />
- Internet de Mutualisation</p>
<p>L&#8217;intranet usine à sites est un projet orienté contenu, qui vise à faciliter la communication dans l&#8217;entreprise, entre différents départements. Le Portail offre la possibilité d&#8217;agréger du contenu. Il propose aussi de travailler à plusieurs équipes, de construire du contenu commun. C&#8217;est donc un projet piloté par le contenu.<br />
Bertrand rappelle l&#8217;importance des comités de pilotage et des équipes d&#8217;encadrement. C&#8217;est le projet réalisé avec eXo Portal et eXo WCM par les équipes de GlobeCast que nous verrons ensuite.</p>
<p>Le Bureau Virtuel est un projet où l&#8217;objectif est de construire un espace de travail pour le collaborateur. Chacun peut piocher des appliquettes dans une liste d&#8217;application pour les placer sur son bureau virtuel. Ici c&#8217;est la possibilité de personnaliser qui est mise en avant. C&#8217;est donc un projet piloté par les services que l&#8217;on souhaite offrir. J&#8217;aime beaucoup cette idée, où l&#8217;utilisateur final se construit son espace de travail. Dans la Finance prenons un opérateur du Front-Office qui traite sur le marché Européen le matin puis les US l&#8217;après-midi. Grâce au portail il peut se construire un espace dédié pour sa vue du matin, puis basculer vers un autre environnement l&#8217;après-midi. Je me souviens aussi d&#8217;une présentation d&#8217;Oracle qui, pour la Société Générale, a proposé de construire un bureau virtuel pour les conseillers en Agence. Lorsque vous viendrez en agence, une fois assis le conseiller aura une vue qui se sera personnalisée selon votre profil. Vous avez besoin d&#8217;un crédit à la consommation ? Une portlet s&#8217;affiche pour que le conseiller puisse vous faire une offre. Et c&#8217;est un crédit auto ? Une deuxième Portlet pour l&#8217;Assurance voiture apparaît alors&#8230; C&#8217;est donc un bureau qui s&#8217;adapte aussi à ce que vous êtes entrain de faire. J&#8217;adore l&#8217;idée d&#8217;avoir un logiciel qui s&#8217;adapte à l&#8217;usage. Oui c&#8217;est de l&#8217;ergonomie, mais c&#8217;est un truc qui coûte une fortune avec une application Web classique, bien rigide, et bien incapable de s&#8217;adapter nativement à vous, l&#8217;utilisateur.</p>
<p>Le troisième type de projet est l&#8217;intégration d&#8217;applications hétérogènes. Prenez un SI d&#8217;entreprise : un moteur Documentum, un annuaire LDAP sur Active Directory Server, un agenda sur Lotus Notes, le Portail est capable d&#8217;agréger des contenus différents, provenant de sources diverses. Evidemment, ces connecteurs sont spécifiques à chaque Portail. Mais Documentum propose ses propores portlets standards par exemple. C&#8217;est donc un projet plus piloté par l&#8217;infrastructure pour le coup.<br />
L&#8217;exemple d&#8217;un site mutualisé qui regroupe différents départements est pertinent, c&#8217;est ce que je fais en ce moment. Comment regrouper sous une même bannière des applications Webs différentes ? Comment proposer plusieurs services à un seul utilisateur final ? Un Portail est donc aussi un moyen de présenter à un seul endroit les services de son SI (<a href="http://www.touilleur-express.fr/2009/09/12/portails-et-portlets/">voir aussi cet article</a>)</p>
<p>Ce que je retiens c&#8217;est que certains projets de Portail permettent aussi de refondre le SI, en pilotant le développement de l&#8217;architecture par la couche de présentation. Oui je sais c&#8217;est bien capilo-tracté (tiré par les cheveux). Bon si vous voulez que l&#8217;on en parle vous m&#8217;appelez. Cela me donne envie de préparer une présentation pour l&#8217;USI pour 2010 par exemple. Va falloir décanter ces idées pour vous les présenter correctement.</p>
<p><strong>Témoignagnes de GlobeCast et FranceBillet</strong><br />
Pour revenir au séminaire, nous avons ensuite assisté à 2 présentations de 2 clients d&#8217;Ippon Technologies. GlobeCast tout d&#8217;abord qui est une filliale de France Telecom, a présenté un projet d&#8217;Intranet réalisé avec eXo Portal et <a href="http://www.exoplatform.com/portal/public/website/product/exomodules/ecm/wcm/wcmoverview">eXo WCM</a>. La deuxième présentation était un projet de portail LifeRay business-to-business par FranceBillet, la billeterie du groupe Fnac, qui a de grosses références comme le concert de U2 dernièrement par exemple.</p>
<p>Nous avons terminé la matinée par une séance de questions/réponses. J&#8217;ai noté quelques questions autour de la sécurité. <a href="http://www.liferay.com/web/guest/community/forums/-/message_boards/message/2556302">LifeRay a des failles de sécurité</a> de type <a href="http://fr.wikipedia.org/wiki/Cross-site_scripting">XSS</a> connues et donc rapidement corrigées. C&#8217;est l&#8217;avantage de l&#8217;open-source. Mais donc attention avec la sécurité, un monsieur sécurité chez un éditeur ne serait pas une mauvaise idée je pense.<br />
Ensuite concernant GWT j&#8217;ai demandé si l&#8217;une des 2 équipes avait fait un projet avec du GWT. Bertrand Pinel cite avec LifeRay le projet <a href="http://vaadin.com/home">Vaadin</a>. Après enquête en effet j&#8217;ai trouvé un exemple avec une application GWT qui propose un PortletContextListener afin de pouvoir faire suivre sous forme d&#8217;événements ce qui vient du monde GWT. Bon, allez je vous vois venir : je ferai un article là dessus un peu plus tard pour présenter ce principe. A vue de nez je pense même qu&#8217;il sera possible de faire aussi une version eXo Portal facilement. Voir l<a href="http://vaadin.com/book/-/page/advanced.portal.html">es articles sur le site de Vaadin</a> sur ce sujet.</p>
<p><strong>Conclusion</strong><br />
Grâce à Ippon Technologies, nous avons eu encore une bonne présentation sur le thème des Portails et des Portlets. Les témoignages ont surtout mis en avant le besoin d&#8217;une organisation et d&#8217;une structuration pour développer un projet avec un Portail. Autant la première partie était technique, avec une présentation à la JUG, autant j&#8217;ai aussi bien aimé ensuite la seconde partie nous expliquant la démarche projet. J&#8217;ai rencontré au buffet d&#8217;autres personnes qui étudient aussi les portails. Nous avons eu aussi la chance de bien discuter avec Patrice Lamarque d&#8217;eXo Platform. La nouvelle version du moteur d&#8217;eXo s&#8217;appelle GateIn. Fruit du rapprochement entre JBoss et eXo Platform, il est très prometteur. Je pense que nous aurons une nouvelle génération de Portails d&#8217;ici quelques mois.</p>
<p>Les Portails version 2010&#8230; Je vois bien une révolution où l&#8217;utilisateur est mis au centre de la nouvelle architecture de l&#8217;information. Pensez au développeur, à l&#8217;administrateur, au chef produit, à la responsable marketing, à l&#8217;utilisateur final&#8230; Le Web sera incontournable, la personnalisation aussi. Il ne manque plus que le Portail Mobile, léger et adapté au format de nos petits écrans, des outils avec une ergonomie très poussée pour que tout le monde puisse s&#8217;en servir.<br />
Le premier qui proposera un PortailOS aussi bien que mon iPhone aura juste gagné. Je pense à un OS qui marcherait bien entendu sur mon navigateur standard, pas spécifiquement sur mon mobile.<br />
Le premier qui proposera un site marchand avec des Portlets ou des Gadgets aura aussi gagné. Un annuaire des Gadgets et des Portlets en quelques sortes.<br />
Le premier qui aura des outils d&#8217;administration standards pour des administrateurs, des responsables de campagne marketing, des développeurs aussi pour construire des pages rapidement, celui-là aura aussi gagné.</p>
<p>Le premier&#8230; on en est pas loin je pense.</p>
<p><strong>Références</strong><br />
Les slides de la présentation sont <a href="http://blog.ippon.fr/2009/10/08/retour-sur-le-seminaire-ippon-sur-les-portails-open-source">sur le blog d&#8217;Ippon Technologies</a>.<br />
<img style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyNTUxNTk4MTA*ODcmcHQ9MTI1NTE1OTgxNTg2NiZwPTEwMTkxJmQ9c3NfZW1iZWQmZz*yJm89YmUwOTg5NzA3MTEzNDEyYWJkY2UwYjM1MTk3ZDUwNmEmb2Y9MA==.gif" />
<div style="width:425px;text-align:left" id="__ss_2166027"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/antoinesd/seminaire-portail-open-source" title="Seminaire Portail Open Source">Seminaire Portail Open Source</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=20091007itsminaireportai-091008093843-phpapp02&#038;stripped_title=seminaire-portail-open-source" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=20091007itsminaireportai-091008093843-phpapp02&#038;stripped_title=seminaire-portail-open-source" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/antoinesd">Ippon Technologies</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2009/10/10/seminaire-sur-les-portails-open-source-chez-ippon-technologies/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Portails et Portlets 2.0 pour votre architecture web.</title>
		<link>http://www.touilleur-express.fr/2009/09/12/portails-et-portlets/</link>
		<comments>http://www.touilleur-express.fr/2009/09/12/portails-et-portlets/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 12:47:58 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[portail]]></category>
		<category><![CDATA[portlet]]></category>

		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=1940</guid>
		<description><![CDATA[Les Portails d’intégration et plus particulièrement les Portlets sont des briques d’architecture qui offrent des services techniques, mais qui permettent aussi à plusieurs projets de se rejoindre et de travailler ensemble. Plutôt que de parler de SOA, nous verrons que le concept de WOPA (Web Oriented Portal Architecture) est une solution d’architecture pour les applications Webs.

Un portail offre un grand nombre de services à une application web
Si vous avez déjà développé des applications webs en Java, vous serez d’accord sur le fait que les besoins fonctionnels et techniques des applications ...]]></description>
			<content:encoded><![CDATA[<p><strong>Les Portails d’intégration et plus particulièrement les Portlets sont des briques d’architecture qui offrent des services techniques, mais qui permettent aussi à plusieurs projets de se rejoindre et de travailler ensemble. Plutôt que de parler de SOA, nous verrons que le concept de WOPA (Web Oriented Portal Architecture) est une solution d’architecture pour les applications Webs.<br />
</strong></p>
<p><strong>Un portail offre un grand nombre de services à une application web</strong><br />
Si vous avez déjà développé des applications webs en Java, vous serez d’accord sur le fait que les besoins fonctionnels et techniques des applications webs sont récurrents. Justement, les Portails d’intégration offrent un ensemble de fonctions standards. Voyons d’abord ce qu’il est possible de faire.</p>
<p>Les services offerts par un Portail sont :<br />
 &#8211; la gestion de l’authentification des utilisateurs<br />
 &#8211; l’autorisation afin de déterminer les droits d’accès aux différentes parties de l’application<br />
 &#8211; la personnalisation afin que l’application web s’adapte au profil du visiteur (P13N)<br />
 &#8211; la possibilité de personnaliser son interface web facilement<br />
 &#8211; la gestion de la navigation et sa définition (catégories, pages, sections)<br />
 &#8211; création des pages de contenu (pages statiques, intégration de pages d’un autre serveur)<br />
 &#8211; gestion de l’internationalisation (I18N)<br />
 &#8211; la possibilité d’intégrer du contenu web d’une application distante<br />
 &#8211; le support sans restriction des frameworks Web<br />
 &#8211; la possibilité de mettre en ligne des services dans des Portlets rapidement<br />
 &#8211; la capacité à offrir une version adaptée aux téléphones portables<br />
 &#8211; l‘offre de composants standards Web 2.0 comme Wiki, Blog, Aggregateur, Mash-ups, etc<br />
 &#8211; le support des Gadgets à la Google<br />
 &#8211; la possibilité d’offrir des services de recherche, de gestion de contenu, de gestion électronique de document</p>
<p>Un moteur de Portail open-source du monde Java comme <a href="http://www.jboss.org/gatein/">GateIn</a> (JBoss Portal + eXoPortal) ou <a href="http://www.liferay.com">Liferay</a> est donc un moyen de gagner du temps en évitant de développer ou de devoir gérer des fonctions standards d’une application Web. L&#8217;installation est simple : un WAR déployé sur un serveur J2EE léger, et c’est tout.</p>
<p>Si vous disposez d’une application Web Java, le déploiement s’effectue en quelques clics dans le portail. Pour aller plus loin, la création de quelques portlets permet en fait d’exposer les fonctions clés de son application web, afin que le Portail puisse gérer le cycle de vie et l’affichage de votre portlet.<br />
Une chose intéressante à noter : vous êtes libre d’utiliser n’importe quel framework Web : <a href="http://code.google.com/webtoolkit">GWT</a>, <a href="wicket.apache.org/ ">Wicket</a>, <a href="http://fr.wikipedia.org/wiki/JavaServer_Faces">JSF</a> ou autre. De ce fait, la migration d’une application J2EE est donc relativement simple.</p>
<p><strong>Qu’est-ce qu’une Portlet ?</strong><br />
Les <a href="http://jcp.org/en/jsr/detail?id=286">Portlets 2.0</a> ont été normalisées en juin 2008. C’est une spécification assez bas niveau, proche des Servlets. Une Portlet est une enveloppe pour votre application web. Elle dispose de différents états : minimisée, normal, maximisée. Il est aussi possible de basculer d’un mode vue à un mode édition pour la configuration. Du côté du code, en attendant que je vous propose d’autres articles, il y a une distinction entre la phase de rendu et la phase d’action. Le rendu est simplement l’action d’afficher la Portlet. La phase d’action permet de gérer les interactions entre l’utilisateur et l’application web. Enfin il est possible d’émettre des événements afin que d’autres Portlets soient notifiées et puissent interagir avec votre Portlet. C’est relativement simple, l’API Portlet 2.0 propose des annotations qui permettent de marquer vos méthodes. Il y a une petite gymnastique à apprendre afin d’adapter vos pages de rendus par rapport à la navigation. Du côté de la gestion des ressources (js,css,images) il est nécessaire que la Portlet gère le chargement de ces ressources, en raison de la gestion de la sécurité et du cache.<br />
Le contenu d’une Portlet enfin peut être caché par le Portail afin d’éviter le rechargement systématique du contenu.</p>
<p>Les portlets offrent en fait un moyen standard et normaliser de déployer son application et d’interagir avec d’autres Portlets. Et il est tout à fait envisageable d’écrire des Portlets standards, sans tomber dans le piège d’utiliser une API propriétaire.</p>
<p><strong>Le modèle de programmation des Portlets </strong> <em>(avec l’aide de Julien Viet d’eXo Platform)</em><br />
Le modèle de programmation natif d&#8217;une Portlet est similaire à celui des Servlets. Il se fait via le package javax.portlet. Le modèle de programmation est légèrement différent, comme expliqué au paragraphe précédent. La plupart des équipes de développement n’utiliseront pas directement l’API, pour la même raison que l’API Servlet en général n’est pas utilisée directement mais via un framework.</p>
<p>En effet, la plupart des frameworks modernes proposent un adaptateur pour Portlet (Portlet Bridge). Avec un modèle de programmation bien pensé, l’exécution en mode Portlet ou directement dans une application web ne présente pas de différences pour le framework. Si vous débutez un projet basé sur des Portlets, il sera important de s’assurer de ce support dans votre framework Web avec un adaptateur pour Portlets. Les plus connus possèdent tous un bridge comme Java Server Faces (<a href="http://jcp.org/en/jsr/detail?id=301">via la JSR 301 Portlet Bridge Specification</a>), Wicket, Struts2 et Tapestry.</p>
<p>D&#8217;autres framework web tel que Spring MVC ne proposent pas une telle portabilité mais néanmoins fournissent un support pour les Portlets en adaptant le framework à l&#8217;API Portlet. J’ai codé une Portlet avec Spring MVC sans soucis, grâce à SpringFuse l’outil de Celerio.</p>
<p>Finalement pour de vieilles technologies telles que Struts 1, il existe des bridges mais qui sont gérés à un niveau en dessous avec une émulation de la couche Servlet via une Portlet. En général ce type de bridge a des limitations.</p>
<p><strong>Les Portlets permettent de travailler à plusieurs équipes sur une même application web </strong><br />
Je prends le temps de vous parler de déploiement car le principe des Portlets permet de travailler par modules. Imaginez plusieurs équipes de développement qui travaillent sur un portail web d’entreprise. En se donnant rendez-vous techniquement sur un Portail, vous pouvez donc offrir un moyen pour chaque équipe de travailler de son côté, avec une installation locale de Liferay ou de GateIn, puis de livrer simplement leurs Portlets vers le serveur de production. Un administrateur se chargera alors d’ajouter et de mettre en place les Portlets du premier projet. J’y vois donc un moyen de faciliter le travail de plusieurs équipes. En effet, c’est bien plus souple que d’imaginer livrer un gros WAR constitué de plusieurs projets développés par plusieurs équipes. Imaginez la difficulté pour l’intégration et la mise en production. Un Portail d’intégration est donc un serveur mutualisé sur lequel plusieurs équipes déposent des Portlets, qui constituent au final une application Web complète.<br />
Le portail permet de découpler le cycle de vie du portail et des applications qui le composent. En effet vous pourrez facilement intégrer de nouvelles applications dans le portail à tout moment. Un autre intérêt de ce type d&#8217;architecture est l&#8217;intégration d&#8217;applications basées des technologies hétérogènes. Vous pourriez vouloir intégrer dans votre portail une application développée 2 ans auparavant par une filliale de l&#8217;entreprise par exemple.</p>
<p>Chez le client chez lequel je travaille en ce moment, ce sera le moyen pour trois équipes à Paris, une à Londres et une à New-York de construire une plateforme de Prime Brokerage avec la même charte graphique, une seule authentification, la gestion de plusieurs langues, et surtout vous l’aurez compris, la possibilité pour chacune de ces équipes de travailler sur leurs Portlets et de les tester en local avec un Portail open-source avant le passage en production.<br />
Les Portlets ne sont pas révolutionnaires. Par contre, c’est l’utilisation dans votre architecture qui le sera. En effet, si vous avez aujourd’hui plusieurs équipes ayant réalisées chacune une application web, il est possible de repenser le système non pas avec une architecture SOA, mais une architecture Web Portal. Au lieu d’agréger des services différents dans un seul endroit pour construire une seule application web, vous offrez la possibilité à chaque équipe de livrer une tranche verticale qui va de la donnée à la couche web en passant par la couche service. Et quelque part, est-ce qu’une application Web dont l’architecture serait définie par l’interface graphique n’a pas plus de sens qu’une application web construite comme un puzzle de services ?</p>
<p><strong>L’exemple d’Amazon.com</strong><br />
La page d’Amazon.com est construite par 34 équipes différentes. Chacune des parties de la page est une Portlet. C’est assez génial car la mise en production d’une nouvelle version n’est plus un problème : il n’y en a plus !<br />
Terminé la mise en ligne d’une application Web complète.</p>
<p>Alors comment font-ils ?<br />
Lorsqu’une équipe est confiante sur une nouvelle fonction, une nouvelle version de sa Portlet est activée sur le Portail. En cas de problèmes, l’administrateur peut aussi rapidement désactiver une Portlet, voire même recharger une version antérieur. Quand on pense à Scrum, à de l’incrémental, il paraît évident que ce Portail va vraiment devenir votre ami non ?</p>
<p><strong>Une porte ouverte vers une architecture WoPA (Web Oriented Portal Architecture)</strong><br />
Je pense que les applications d’entreprises sont amenées à s’ouvrir de plus en plus. Nous avons pensé un moment qu’une architecture orientée service serait la solution. Ces 5 dernières années en effet, nous sommes passés d’architectures client-serveur (J2EE 1.4 avec les EJB2.1, Corba, RPC) à des architectures où la Donnée a reprit de l’importance avec les architectures REST. Personne ne semble vraiment savoir ce que représente l’architecture orientée service, à part les éditeurs de logiciels très friand d’acronyme dans leurs plaquettes publicitaires.<br />
Une architecture WoPA (copyright N.Martignole) avec un Portail d’intégration, est une application capable de combiner le travail de plusieurs équipes, de plusieurs projets, dans un seul endroit : le Portail Web. Cela remet en avant l’importance des données plutôt que de leur logiciel. Je pense surtout au monde de la Banque, où l’IT est important. Vous n’imaginez pas le nombre d’équipes et de projets chez le client où je travaille en ce moment.</p>
<p>L’idée novatrice est aussi que l’interface Web n’est peut-être pas la partie la plus importante de votre application. A l’extrême, il est dommage de proposer un GUI Web et de ne rien proposer à vos clients afin qu’ils viennent chercher les Données directement. Bref ne pas faire de REST devrait être refusé par la DSI dans un schéma d’architecture.</p>
<p>Pour expliquer cela, pensez à Twitter.com. Il s’avère que l’API de Twitter est utilisée 10 fois plus que le site web de Twitter. Pourquoi finalement votre application ne serait-elle pas utilisée non pas avec votre GUI Web que vous avez développé, mais via un Portail capable de venir chercher de la Donnée ? Est-ce que votre valeur ajoutée est de faire une application Web ou d’exposer de la Donnée de manière intelligente ?</p>
<p><strong>Conclusion</strong><br />
C’est donc via une solution standard comme un Portail d’intégration et les Portlets qu’il semble plus logique de s’orienter, dès lors que plusieurs équipes exposent des données et des services aux utilisateurs.<br />
Je crois à une solution où l’intégration du travail de plusieurs équipes est fait dans un Portail dès lors qu’auparavant, chacune d’elles proposaient une interface Web différente.</p>
<p><em>Merci à <a href="http://blog.julienviet.com/">Julien Viet</a> de la société <a href="http://www.exoplatform.com">eXo Platform</a> pour sa relecture et ses corrections.</em></p>
<p><strong>Ressources</strong><br />
<a href="http://www.liferay.com/">Liferay</a> est un portail open-source lancé en 2000 qui est compatible avec les standards Javas comme la JSR-168 (Portlet 1),  JSR-286 (Portlet 2), JSR-170 (JCR)</p>
<p><a href="http://www.jboss.org/gatein">GateIn</a> est un portail open-source constitué par la fusion de JBoss Portal et d’eXo Portal. Avec une interface très puissante, le support des standards (JSR-168,286,170), la possibilité d’ajouter des Gadgets facilement, c’est l’un des portails les plus en vogue en ce moment.<br />
<a href="http://www.jboss.org/gatein">http://www.jboss.org/gatein</a> et <a href="http://www.exoplatform.com">http://www.exoplatform.com</a></p>
<p><a href="http://www.oracle.com/technology/products/weblogic/portal/index.html">Oracle Weblogic Portal 10g </a>est la version actuelle du portail d’Oracle. La version 11 devrait sortir à la fin de cette année avec le support de la JSR-286.</p>
<p><a href="http://www.infoq.com/presentations/Web-Oriented-Architecture-Dion-Hinchcliffe">Présentation de Dion HINCHCLIFFE</a> sur Web Oriented Architecture</p>
<p><a href="http://www.programmableweb.com">ProgrammableWeb</a> est un annuaire d’API et de Mashup</p>
<p><a href="http://wlp.oracle.com:80/dvt/appmanager/demo/dvt?_nfpb=true&#038;_nfxr=false&#038;_pageLabel=P1400147111221587375187">Démonstration</a> de la fonction Mashup d’Oracle Weblogic Portal</p>
<p>La <a href="http://jcp.org/en/jsr/detail?id=301">JSR-301</a> est la Portlet Bridge Specifications for JSF, en cours de finalisation.</p>
<p>La <a href="http://jcp.org/en/jsr/detail?id=286">JSR-286</a> est la spécification des Portlets 2.0 à laquelle eXo Platform, Liferay et Oracle ont participé</p>
<p>La <a href="http://jcp.org/en/jsr/detail?id=170">JSR-170</a> est la spécification Java Content Repository, implémentée par le moteur d&#8217;eXo Portal et de Liferay.</p>
<p>(Liens ci-dessous ajoutés suite à la remarque d&#8217;Alexis)</p>
<p>IBM propose IBM Web Portal <a href="http://www-01.ibm.com/software/fr/info1/websphere/">http://www-01.ibm.com/software/fr/info1/websphere/</a></p>
<p>SUN Microsystems propose GlassFish Web Space Server basé sur Liferay <a href="http://www.sun.com/software/products/webspace/index.xml">http://www.sun.com/software/products/webspace/index.xml</a>. Il y a une bonne présentation de 20 minutes très intéressante <a href="http://webcast-west.sun.com/interactive/10A02171/index.html">ici</a></p>
<p>Vignette propose Vignette Portal 8 http://www.vignette.com</p>
<p>J&#8217;ai oublié de citer l&#8217;implémentation de référence de la JSR-168 et de la JSR-286 : <a href="http://portals.apache.org/pluto/">Apache Pluto</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2009/09/12/portails-et-portlets/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Jazoon Day 3 : Portlet 2.0 by Thomas Heute</title>
		<link>http://www.touilleur-express.fr/2009/06/25/jazoon-day-3-portlet-20-by-thomas-heute/</link>
		<comments>http://www.touilleur-express.fr/2009/06/25/jazoon-day-3-portlet-20-by-thomas-heute/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 14:31:31 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[jazoon]]></category>
		<category><![CDATA[portail]]></category>
		<category><![CDATA[portlet]]></category>

		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=1609</guid>
		<description><![CDATA[Première présentation ce matin : &#171;&#160;Portlet 2.0&#8243; par Thomas Heute de JBoss/Red Hat.
La spécification des Portlets 2.0 est sortie en juin 2008. Thomas nous donne un retour un an après de la conférence. Lui-même contributeur depuis 2004 sur JBoss Portal, une année sur JBoss Seam, il est aujourd&#8217;hui le responsable du projet JBoss Portal chez RedHat.
L&#8217;agenda de sa présentation sera :
- Quelles sont les nouvelles fonctionnalités de la version Portlet 2.0
- Adoption par les vendeurs
- La portabilité
- Portlets versus Gadgets
Dans un premier temps, retour sur la JSR-286 Portlet 2.0 sortie ...]]></description>
			<content:encoded><![CDATA[<p>Première présentation ce matin : &laquo;&nbsp;Portlet 2.0&#8243; par Thomas Heute de JBoss/Red Hat.</p>
<p>La spécification des Portlets 2.0 est sortie en juin 2008. Thomas nous donne un retour un an après de la conférence. Lui-même contributeur depuis 2004 sur JBoss Portal, une année sur JBoss Seam, il est aujourd&#8217;hui le responsable du projet JBoss Portal chez RedHat.</p>
<p>L&#8217;agenda de sa présentation sera :<br />
- Quelles sont les nouvelles fonctionnalités de la version Portlet 2.0<br />
- Adoption par les vendeurs<br />
- La portabilité<br />
- Portlets versus Gadgets</p>
<p>Dans un premier temps, retour sur la JSR-286 Portlet 2.0 sortie l&#8217;an passé. Tout d&#8217;abord l&#8217;une des innovations les plus importantes est ce qu&#8217;il appelle &laquo;&nbsp;Resource Serving&nbsp;&raquo;. L&#8217;objectif est de permettre l&#8217;envoi de données vers le navigateur qui ne font pas partie du portail, comme un fichier PDF ou Excel par exemple, tout en conservant les fonctionnalités d&#8217;une portlet. Cette spécification vise donc à offrir un accès au contexte afin d&#8217;assurer le support de la sécurité et de l&#8217;accès aux données par exemple.</p>
<p>Il montre ensuite l&#8217;interaction entre les portlets avec une RemoteCommandPortlet sur une démonstration fonctionnant avec JBoss Portal. Une fenêtre HTML détachée permet d&#8217;envoyer des commandes à une autre portlet, la gestion de l&#8217;asynchrone est très simple.<br />
A ce propos, il explique que les améliorations du support d&#8217;Ajax dans la spécification Portlet 2.0 permettent à des frameworks comme ICEFaces ou RichFaces de fonctionner correctement dans des portlets.</p>
<p>Les Portlets 2.0 peuvent maintenant partager leurs paramètres avec d&#8217;autres produits ce qui permet de faire communiquer les portlets entre elles. Thomas Heute montre l&#8217;exemple d&#8217;une portlet Google Map et d&#8217;une portlet Weather qui recoivent toutes les deux en paramètre le code postal d&#8217;une ville américaine.</p>
<p>Une portlet peut aussi déclencher une événement, les autres portlets peuvent être notifiées et se mettre à jour. Il conseille de ne s&#8217;en servir que pour de la mise à jour de l&#8217;interface.</p>
<p>Sur le slide suivant il dresse un état de l&#8217;implémentation de la spécification par les différents acteurs du marché :</p>
<p>La <a href="http://jcp.org/en/jsr/detail?id=286">JSR-286</a> Portlet 2.0 est en version finale depuis le 12 juin 2008.<br />
- JBoss Portlet Container 2.0 est sorti le 13 juin 2008 puis inclus dans JBoss Portal 2.7.0 en octobre<br />
- eXo Portlet Container 2.0 est sorti le 18 juin 2008, mis dans eXo Portal le 1er juillet 2008<br />
- Liferay portal a sorti sa version le 17 juillet 2008<br />
- Apache Jetspeed assez tardivement le 27 mai 2009 dernier<br />
- IBM Websphere portal 6.1 a été disponible sept 2008<br />
- Oracle Portal (BEA () + Oracle (2) + Sun(1)) ?</p>
<p>Concernant le support des frameworks WEB il existe 2 spécifications<br />
JSF Support:<br />
 &#8211; JSR-301 specification addresses JSR-166<br />
 &#8211; JSR-329 addressing JSR-286 (JBoss Portlet bridge on the way)</p>
<p>De ce qu&#8217;il a pu voir sur les forums, les pages :<br />
Wicket support -> mostly there with support for events<br />
Sruts 2 plugin for JSR-286<br />
Spring MVC also support JSR-286<br />
WebWork</p>
<p>A propos de la portabilité : attention la spec ne dit pas comment on fait un portail mais une portlet.<br />
La notion de page n&#8217;est pas définie.<br />
La communication entre portlet:<br />
 &#8211; UI Level<br />
 &#8211; Le mécanisme événementiel n&#8217;est pas un remplacement par JMS, ne pas abuser de ce mécanisme.<br />
 &#8211; Doit-on se coordonner à travers les pages ?<br />
 &#8211; Portlets aren&#8217;t a template mechanism per se</p>
<p>Rester à une gestion des événements entre portlet qui sont sur la même page si vous ne voulez pas avoir de soucis.</p>
<p>Slide suivant qui m&#8217;a fait sourire : <strong>Portlet vs Widget vs Gadget (vs Toilet ?)</strong><br />
Thomas Heute explique tout d&#8217;abord en quoi consiste un Gadget, tel que l&#8217;on peut le voir sur Facebook. C&#8217;est un affichage déporté dans un autre site web d&#8217;une fonctionnalité hébergée sur un serveur primaire. Une portlet est plutôt la représentation locale d&#8217;un service distant, c&#8217;est une composition gérée par un portail, afin d&#8217;assurer des services communs (authentification, autorisation, communication, etc) dans un seul endroit.</p>
<p>Il cite différentes initiatives autour des Gadgets :<br />
Google OpenSocial, OpenAjax Alliance (OBM, Google, Sun, Red Hat, Oracle, Microsoft) -> Widget proposal</p>
<p>L&#8217;avantage des Portlets par rapport à un Gadget/Widget:<br />
-> Fait pour des applications plutôt complexes.<br />
-> Vous pouvez utiliser votre framework en général,<br />
-> L&#8217;état des portlets est gardé lorsque la page se rafraichie.<br />
-> propagation de l&#8217;identité, de la sécurité, interaction avec un portail, visuel.</p>
<p>Les gadgets ont l&#8217;avantage d&#8217;être développable rapidement, comme pour consommer par exemple un flux RSS. Facile pour l&#8217;intégration du côté client, facile pour partager de l&#8217;information. On pense au Gadget Twitter que j&#8217;ai sur mon blog par exemple.</p>
<p>Il termine par un slide sur ses idées pour l&#8217;avenir<br />
> We could use more annotations a la Servlet 3.0 or JSF 2.0 @Portlet (no portlet,xml)<br />
> We could all benefit from a PORTAL specification<br />
 &#8211; more aware of the environment, communication with the portal itself<br />
 &#8211; Portal object management<br />
 &#8211; Federated search/index</p>
<p>Enfin il revient sur l&#8217;annonce du parternariat entre JBoss Portal et eXo Portal. Il résume cela par<br />
&laquo;&nbsp;<strong>JBoss builds the platform, eXo Platform builds the solution, We are hiring !</strong>&nbsp;&raquo;</p>
<p><strong>Réflexions et conclusion</strong><br />
Présentation intéressante, je crois que les Portlets 1.0 ne doivent plus être utilisées. Je travaillerai cet été à l&#8217;étude de différents portails pour le client avec lequel je travaille, le sujet est donc d&#8217;actualité. Mon souci du moment : comment proposer l&#8217;étude d&#8217;alternative à la politique d&#8217;achat qui voudrait que l&#8217;on prenne Oracle Portal, sans savoir si celui-ci correspond à nos besoins ? Mais c&#8217;est une autre histoire&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2009/06/25/jazoon-day-3-portlet-20-by-thomas-heute/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

