Les services Liferay sont générés via le Service Builder à partir du fichier src/webapps/WEB-INF/service.xml (par défaut) via Maven :
mvn liferay:build-service
Mais une fois que notre panoplie de fichiers est générée, il est difficle de renommer notre package ou le nom de la table SQL par exemple. En effet, le Service Builder va regénérer tout un tas de fichiers, mais il va aussi compléter certains fichiers en gardant les anciennes références plus les nouvelles, ce qui va causer un petit soucis lors du déploiement :(
Voici les fichiers à manuellement corriger (Supprimer les références incorrectes à l'intérieur après la génération du service renomé)
- src/main/webapp/WEB-INF/sql/tables.sql
- src/main/webapp/WEB-INF/sql/indexes.sql
- src/main/webapp/WEB-INF/sql/indexes.properties
- src/main/resources/META-INF/portlet-spring.xml
- src/main/resources/META-INF/portlet-orm.xml
- src/main/resources/META-INF/portlet-hbm.xml
- src/main/resources/META-INF/portlet-model-hints.xml
Dernier petit point pour la collaboration à plusieurs sur git, le build.number dans src/main/resources/service.properties peut aussi détraquer l'application si on essaye de déployer un build.number inférieur à celui déjà installé sur Liferay ! Auquel cas, un petit coup de nettoyage SQL s'impose :
delete FROM servicecomponent where data_ like "%NOM_DE_L'ANCIEN_SERVICE%"