Foren

Création Portlet, thèmes

Marco Jonas, geändert vor 12 Jahren.

Création Portlet, thèmes

New Member Beiträge: 2 Beitrittsdatum: 13.07.11 Neueste Beiträge
Bonjour,

Je travaille actuellement sur des sites Web développés sous Liferay et plus précisément sur la mise en place de bonnes pratiques.

J'utilise le sdk liferay avec la version 6.0. Si j'ai bien compris les préconisations, il est préférable de créer un projet par type d'objet que l'on souhaite crééer (thèmes, layouts, portlets, etc ...). Cependant, pour éviter de démultiplier les minis projets sous Eclipse, j'aimerais savoir s'il est possible d'avoir un projet par type d'objets:
- 1 projet pour l'ensemble des thèmes
- 1 projet pour l'ensemble des layouts
- 1 projet pour l'ensemble des portlets (beaucoup de portlets avec du struts 2)
- 1 projet pour l'ensemble des hooks

Est-ce une bonne méthode ? Avez-vous d'autres préconisations ?

Merci d'avance.
thumbnail
David H Nebinger, geändert vor 12 Jahren.

RE: Création Portlet, thèmes

Liferay Legend Beiträge: 14914 Beitrittsdatum: 02.09.06 Neueste Beiträge
Themes should typically be separated out because they can be deployed/used separately. If you have themes that are dependent upon hooks, then you can include the hooks in the project.

Portlets you'll hear either way, together or separate. I tend to keep all of mine together as it makes one deployment target and will consume less runtime resources, but the argument for splitting them up goes along the lines of decoupling portlets that have no dependencies upon each other.

I would argue it is okay to group them together, especially when there are dependencies (to ensure that the dependencies are satisfied when deployed). In a purist sense, separate projects have some value, but in my experience the runtime implications of separate projects quickly negates the separate project purity.
thumbnail
Leo PRATLONG, geändert vor 12 Jahren.

RE: Création Portlet, thèmes

Expert Beiträge: 363 Beitrittsdatum: 06.07.10 Neueste Beiträge
Comme le dit David, on ne peut pas regrouper les thèmes (sauf à la limite, si les thèmes varient uniquement sur la couleur, en modifiant les fichiers Color-Scheme).

Une solution, pour avoir un seul projet, est d'utiliser Maven. Mais une fois importé dans Eclipse, chaque thème s'ouvre comme un seul et uniquement projet, donc le problème sera toujours là. Seulement, en terme d'organisation et de versionning des sources, ce sera plus pratique (et pour la gestion des dépendances également, bien sûr).

Pour les portlets, personnellement, je préfère les conserver dans des projets différents (je préfère avoir 1 portlet par WAR dans le sens où je peux facilement le réutiliser sur un autre portail de manière totalement autonome). Parfois, les contraintes techniques nécessitent de mettre plusieurs portlets par WAR (je pense notamment à un partage de ressource via la PortletSession lorsqu'un (ou plusieurs) portlet(s) à la propriété <private-session-attributes>true</private-session-attributes> (ce qui l'empêche d'écrire dans certaines sessions).
Mais bien sûr, si vos portlets ne seront pas réutilisés ou forment un ensemble cohérent tant au niveau technique que fonctionnel, ils peuvent être situés dans le même WAR.