Actualités

[09/06/2016] Eram booste ses ventes en ligne avec Smile

Smile accompagne l’enseigne Eram (leader de la chaussure en centre-ville et centres commerciaux) dans la mise en œuvre d’un site responsive design de nouvelle génération lui permettant de déployer à grande échelle sa stratégie de vente en ligne. Découvrez le témoignage !

[02/06/2016] Nouveau livre blanc Smile : Linux pour l’embarqué

Smile inaugure une nouvelle collection de livre blanc sur le thème de l'embarqué. Le premier de la série est consacré à l'utilisation de Linux embarqué dans les systèmes industriels.

[31/05/2016] Webinars Smile : Notre expertise au coeur de votre succès

Le printemps de Smile c'est aussi le temps des webinars. Pour tout savoir sur les solutions Open Source, retrouvez notre programme complet en mai & juin 2016.

Toutes les actualités picto
       

Vous avez besoin de mettre à jour votre Lecteur Flash Flash 7

Guillemet ouvrant l'actualité des solutions
et des technologies open source Guillemet fermant
picto

Intégrer "métier" et Liferay avec ESI-Gate - Partie 2/2

Suite de la Partie 1, avec plus d'informations sur ESIGate.

Cet article est la suite de celui-ci.

ESIGate

ESIGate est un agrégateur de contenus web open source (http://esigate.org). Il peut s'interfacer à des serveurs existants, dont il récupère les pages Html à la volée. Les différentes bribes de contenus ainsi obtenues de différents serveurs sont ensuite assemblées en une page unique, servie à l'internaute.

La grande force de cette approche est qu'elle est totalement agnostique technologiquement, capable d'intégrer n'importe quelle application web, sans demander la moindre modification de l'existant.

ESIGate peut aussi être configuré pour extraire des bribes de contenus au sein des pages existantes. Dans ce cas, il est possible d'insérer des marqueurs – tag esi ou commentaires Html, afin de parfaitement délimiter les blocs à extraire.

C'est une technique qui a pour elle la simplicité et la non-ingérence.

Une portlet ESIGate

Une portlet embarquant ESIGate permet alors d’enrichir les options d’intégration de Liferay en proposant une solution générique pour intégrer une application tierces, le tout avec une approche bien plus puissante que les iframes.

La configuration de la portlet permet de définir le bloc et l’application sources à intégrer. Les urls et les actions sont réécrites pour pointer vers Liferay et gérer les étapes de l’application métier.

Apports

  • ESIGate peut agréger uniquement des blocs, éventuellement extraits  avec des requêtes xpath,
  • Le code html produit est propre,
  • La navigation du browser (précédent et suivant) est préservée
  • ESIGate peut gérer l’authentification et s’interfacer avec un serveur CAS
  • Le système de cache est transparent et s’appuie sur les entêtes HTTP standards

Le tout dans une architecture découplant clairement portail et métier.

Respect des principes Liferay

Finalement, étant toujours une portlet, le bloc applicatif se manipule et s’administre comme les autres dans Liferay :

  • Ajout et déplacement dans un page,
  • Gestion des droits sur la portlet
  • Gestion de bibliothèques de portlets
  • Packaging et déploiement simple.

Et il est également possible de proposer à partir de la portlet générique plusieurs instances préconfigurées sur des sources et des blocs données. Les pages et dashboards peuvent alors être librement composés avec des vues et des formulaires métiers.

Limites

Cette solution connait néanmoins certaines limites :

  • Un tel déploiement a besoin d’une architecture propre pouvant s’appuyer sur un référentiel utilisateur.
  • Les ressources externes (JS, CSS) incluses dans l’application métier doivent être cloisonnées pour éviter les effets de bord.
  • Les urls des liens et formulaires devant être réécrits, une adaptation est nécessaire pour les applications les générant à la volée en JS.

Conclusion

Cet outil trouve donc particulièrement son sens lors du déploiement de nouveaux portails.

Le découplage qu’il apporte simplifie aussi bien le développement que la maintenance de la plateforme : les tâches pouvant être beaucoup plus facilement parallélisées.

Mais le point le plus important est que la partie métier est complètement libre technologiquement : aucune compétence sur le portail et les portlets n’est requise, et ce aussi bien en build qu’en run.

Pierre Frouge
picto

Commentaires

       
maher
merci pour l'article. mais ou peut on trouver le code source de la portlet ESIgate.
mercredi 08 avril 2015 @ 10:30
       
Ecrire un nouveau commentaire