Utilisation de Librairies partagées dans Liferay DXP 7.2Utilisation de Librairies partagées dans Liferay DXP 7.2https://liferay.dev/en/c/message_boards/find_thread?p_l_id=119785333&threadId=1150872202024-03-28T19:46:16Z2024-03-28T19:46:16ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Eric COQUELINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1151096892019-09-06T09:12:52Z2019-09-06T09:12:52ZGérald,<br />D'un point de vue déploiement, c'est comme avant pour vous : le fichier doit être déposé dans deploy/. Donc l'impact est clairement chez le développeur.<br />Bonne journée,Eric COQUELIN2019-09-06T09:12:52ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Gérald CAUVINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1151082122019-09-06T09:06:17Z2019-09-06T09:06:17ZBonjour,En fait, tout en étant en charge de la définition de l’infrastructure Liferay DXP, je vais être également en charge de définir le processus de déploiement des applicatifs. Nous avons un logiciel de déploiement configurable ( sous forme de plugin (à définir) dans lequel il faut définir les "méthodes" de déploiement et ceci pour différents environnements qui vont du DEV jusqu'à la PROD, avec des personnalisations liées à chaque environnement.Effectivement, la partie applicative je ne vais pas m'en occuper par contre je vais devoir piloter le process de déploiement.Pour la version 6.2 de Liferay, nous déposions le *.war dans /deploy/ et Liferay se chargeait de déployer dans le répertoire /tomcat/webapps. Les "fameuses" librairies étaient déposées dans le répertoire /tomcat/lib/ext et les "ressources" dans un répertoire spécifique tout en personnalisant les fichiers .properties. Tout ceci sous forme de livrable (ou archive) que le logiciel se charge de déployer.Pour la version DXP de Liferay et vous avez raison de le souligner, je veux qu'on utilise le concept OSGI. Par contre, je pense avoir mal compris le process de construction et le déploiement des modules OSGI (c'est pour cela que je parle de .war , de jar, ...et ceci à tord). D'où mon idée (peut être mauvaise), de proposer aux développeurs (de développer) un module OSGI qui embarquerait les librairies communes utiles pour tous les applicatifs futurs de Liferay. En résumé, je ne veux pas savoir quelles librairies sont utiles car comme vous le dites c'est de la responsabilité du Dev, mais je veux savoir comment les déployer (d'où mon "mauvais" parallèle avec le répertoire /tomcat/lib/ext) .Gérald CAUVIN2019-09-06T09:06:17ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Eric COQUELINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1151007922019-09-05T15:21:16Z2019-09-05T15:21:16ZBonjour Gérald,<br />J'ai compris que vous n'étiez pas développeur mais vous conviendrez que les dépendances requises sur votre application sont bien déterminées par les développements spécifiques. L'article que j'ai référencé est bien destiné aux développeurs et c'est donc leur responsabilité de savoir quelles sont les librairies dont ils ont besoin. Et s'ils préfèrent la méthode du lib/ext alors ils communiqueront à l'exploitant les prérequis logiciel.<br />Liferay vous permet de développer comme en 6.2 avec des war mais ce n'est clairement pas dans votre interêt à mon avis. Je crois que vous devriez remonter toutes ces questions aux développeurs de votre projet pour qu'ils vous disent quelles sont leurs nouvelles contraintes en 7. En revanche, si vous êtes en train de tenter un migration sans modifier le code (ce qui me parait cavalier), il vous faudra effectivement user du lib/ext probablement.<br />Même la partie exploitation/installation évolue avec Liferay DXP. Il vous sera difficile, à mon avis, d'éviter un minimum de montée en compétence sur le concept OSGI.<br />Bonne journée,Eric COQUELIN2019-09-05T15:21:16ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Gérald CAUVINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1151026322019-09-05T14:47:47Z2019-09-05T14:47:47ZBonjour,Après quelques tests, j'ai pu trouver l'emplacement des librairies ".jar".Liferay semble gérer tout par lui même et dépose les .jar dans le répertoire "osgi/modules".Les ".war" il les met dans osgi/war.Il me reste plus qu'à trouver les fichiers de configuration comme les fichiers .properties Gérald CAUVIN2019-09-05T14:47:47ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Gérald CAUVINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1150940022019-09-05T12:08:40Z2019-09-05T12:08:40Z<html><head></head><body>Bonjour,j'ai lu le lien que vous m'avez fourni. J'ai à peu près compris le principe. Toutefois, n'étant pas développeur, je n'ai pas la maîtrise de tout cela. Au risque de paraître un peu "lourd", quand vous dites que "vos librairies devraient être déployées comme des jar dans le conteneur", est-ce que cela veut dire qu'elles devraient être déployées dans un des sous répertoires de <pre><code>${liferay.home}/osgi?&nbsp;</code></pre><pre><code></code></pre>D'après ce que je comprends:<br>/osgi/marketplace c'est pour les plugins du marketplace (les fichiers LPKG)<br>/osgi/war c'est pour les applications .war<br>/osgi/modules/ c'est pour les modules OSGIPour /osgi/configs/ ... je n'ai pas trop compris.<br><br>ou est-ce que cela signifie que "mes" fichiers .jar, je dois les embarquer dans un modules OSGI qui doit être construit d'une certaine manière "à la sauce OSGI"?J'ai développé des outils de déploiement pour déployer des JAR, des WAR, les fichiers .properties, créer des datasources, ...En version 6.2, les .war étaient déployées dans tomcat/webapps et les fichiers.jar je les déposais dans un répertoire spécifique. C'est au lancement de la JVM, que les librairies étaient "prises".En version 7.2, les .war sont déployés dans /osgi/war mais quid des .jar ou du fichier qui regroupe les .jar?Je voudrais donc repartir sur les mêmes bases de déploiement mais en adaptant à la version Liferay 7.2.Pour les WAR, pas de problème. Je dépose dans /deploy/ et Liferay fait le reste.Pour les JAR et properties, je m'interroge<br>Si vous avez des idées, je suis preneur. <br>MerciGC</body></html>Gérald CAUVIN2019-09-05T12:08:40ZRE: Utilisation de Librairies partagées dans Liferay DXP 7.2Eric COQUELINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1150893452019-09-04T14:10:29Z2019-09-04T14:10:29ZGerald,<br />DXP vient avec un conteneur OSGI ce qui revient à revoir de façon assez structurante les dépendances de librairie.<br />Selon moi (et conformement à l'esprit de OSGI), vos librairies devraient être déployées comme des jar dans le conteneur (mise en conformité OSGI requise) pour ensuite pouvoir y faire référence depuis vos différents modules.<br />Il est aussi possible de les déployer comme à l'ancienne (dans un repertoire lib/) et il existe des annotations dans le bnd.bnd pour gérer des imports depuis un système de fichiers.<br />Vous pouvez lire cet article sur ce sujet: <a href="https://portal.liferay.dev/docs/7-1/tutorials/-/knowledge_base/t/adding-third-party-libraries-to-a-module">https://portal.liferay.dev/docs/7-1/tutorials/-/knowledge_base/t/adding-third-party-libraries-to-a-module</a>Eric COQUELIN2019-09-04T14:10:29ZUtilisation de Librairies partagées dans Liferay DXP 7.2Gérald CAUVINhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1150872192019-09-04T13:40:42Z2019-09-04T13:40:42ZBonjour,Je suis actuellement dans l'étude d'une migration de Liferay 6.2 vers une version Liferay DXP 7.2. J'étudie actuellement et uniquement la partie logiciel. Je ne suis pas en charge de la partie applications. En version Liferay 6.2, nous utilisons des librairies partagées que nous "déposons" lors d'un déploiement dans un répertoire tomcat/lib/ext/librairies en ayant pris soin de définir les éléments dans le fichier catalina.properties dans la partie common.loader=En Liferay DXP 7.2, dans mes premiers tests j'ai voulu reproduire ce schéma. Il semblerait que cela ne soit pas correct. Le support Liferay m'a fait remonté que Liferay DXP était vu comme un container et que si je voulais utiliser des librairies partagées, il faudrait que je les livre dans un .war déployable par Liferay. Ainsi les autres applications pourraient "