Masquer les erreurs de compilation du Hook

L’intérêt du Hook est d‘ajouter des points d’extension de Liferay permettant ainsi de customiser Liferay sans toucher au code du portail.
C’est le mode privilégié pour les modifications du portail Liferay.

Il a néanmoins 2 problèmes :
– son périmètre qui est limité aux surcharges des JSP Liferay, à quelques propriétés de configuration ou de traduction, et à la gestion d’événements Liferay ou du modèle fourni par le Service Builder.
– la compilation en erreur en développement, c’est de ce point dont nous allons parler.

Si l’on veut customiser une page de Liferay, celle-ci a souvent besoin d’importer d’autres pages (exemple : /html/portal/init.jsp) ou des ressources déclarées dans le portail lui-même (themeDisplay, …).

A part importer une grande partie du code dans notre projet de Hook, il va y avoir des erreurs de compilation qui ne seront pas gênantes pour le déploiement mais pollue fortement l’environnement de développement.

Si on ne peut pas facilement éviter ces erreurs de compilation, on peut au moins les masquer à l’aide d’Eclipse.

Effectuer un clique droit sur le projet de Hook > Properties > Validation
Sélectionner « Enable project specific settings »
Cliquer sur le bouton « … » de la ligne « JSP Syntax Validator »

Cliquer sur le bouton « Add exclude group

Selectionner « Exclude group » et cliquer le bouton « Add Rule… ».
Selectionner « Folder or File name »

Cliquer sur « Browse folder » et selectionner le répertoire contenant les jsps modifiés par le Hook

Valider et forcer la compilation.

Et voilà les erreurs de compilation n’apparaissent plus.

Une autre possiblité, c’est d’utiliser le plugin liferay pour Eclispe IDE 1.3+, une option du wizard pour le  Hook permet de désactiver la validation de la syntaxe des JSP.