...
Ce message n’est cependant pas bloquant et les channel restant seront tout de même traités par la procédure d’import.
Import des Channel et problème de "Duplicate Key"
Il se peut que durant la phase d'import des channel certaines définitions de portlets ne puissent être importés à cause d'un problème de "Duplicate Key". Ceci signifie que les champs fname et name de la portlet à importer existent déjà dans la table de la base de données et ceci lève donc une exception suite à une contrainte d'unicité définie sur ces champs là. Une procédure manuelle a été cependant élaborée afin de palier à cette anomalie : elle consiste à réaliser une comparaison entre les deux fichiers causant l'anomalie (fichier exporté et fichier de la nouvelle version) pour en cibler les principales modifications :
- si les fichiers sont identiques (ou presque : champ "iconURL" seulement qui diffère)
- supprimer le fichier du dossier de l'export, car la définition est mieux dans la nouvelle version.
- sinon : renommer la zone causant l'anomalie.
Voici un exemple illustrant cette procédure de correction :
Anomalie tracée dans les logs : "portlet recherche : "name" identique -> (portlet_name)=(Recherche) already exists."
Or les deux portlets sont différentes : l'une permet de faire la recherche sur Google alors que l'ancienne utilise une application de recherche spécifique.
La solution dans ce cas consiste à renommer le champ "name" de l'ancienne portlet afin que celui-ci soit unique en base. Nous proposons dans ce cas de la renommer de façon plus explicite en fonction de la fonctionnalité liée à la portlet, par exemple en la renommant : "Recherche de contenu"
Import des « fragment-layout »
Identiquement aux « channel », la procédure d’import des « fragment-layout » est relativement basique. Celle-ci se fait via la commande Ant :
...