Exportation et transfert d'éléments de la configuration du portail

Vous pouvez également exporter des configurations partielles.

Pourquoi et quand exécuter cette tâche

Pour ce faire, spécifiez la hiérarchie XML en descendant jusqu'à la ressource de portail spécifique à exporter. Pour l'élément de ressource de portail proprement dit, spécifiez une action export ; pour ses parents, spécifiez une action locate.

L'exemple de fichier de requête XML ExportPage.xml fourni avec le portail exporte une page portant le nom unique ibm.portal.ssa.SamplePage. Cette page exportée n'existe pas dans un portail qui vient d'être installé. Vous pouvez la créer en exécutant le fichier modèle DeployPortlet.xml, lequel est évoqué dans la section suivante.

Normalement, vous spécifiez les ressources à exporter par leur ID objet ou par leur nom unique. Vous pouvez utiliser le portlet d'administration Noms uniques personnalisés pour rechercher les ID objet et les noms uniques des ressources de portail. Certaines ressources prennent également en charge la recherche en fonction d'autres attributs ; reportez-vous à la documentation de référence XML pour plus de détails.

L'exécution de l'exemple de fichier de requête ExportPage.xml mentionné précédemment génère un fichier XML similaire à ExportPageResult.xml. Vous pouvez utiliser ce fichier pour mettre à jour la page en lui donnant l'état exporté, si elle existe toujours dans le portail. Vous pouvez aussi utiliser ce fichier pour recréer la page, au cas où vous la supprimeriez ultérieurement.

En regardant le fichier, vous remarquez qu'il comprend non seulement la page elle-même, mais aussi d'autres éléments de configuration auxquels la page renvoie, par exemple le portlet placé sur la page. Ces autres éléments sont associés à une action locate. L'exportation ne comprend pas l'intégralité de leurs données de configuration, mais suffisamment d'informations pour les rechercher dans le portail, en supposant qu'ils existent. Notez la manière dont la configuration de la page fait référence aux attributs objectid d'autres ressources, par exemple dans l'attribut portletref des éléments portletinstance.

Toutes ces références sont décrites par ID d'objet. Par conséquent, si les ID objet sont corrects, les ressources référencées doivent être recherchées dans le portail, même si elles n'étaient pas incluses dans l'exportation. La localisation de ressources avant leur référencement n'est nécessaire que si vous ne connaissez pas leur ID objet réel : dans ce cas, vous devez rechercher les ressources par un autre attribut d'identification. Pour plus d'informations, consultez la documentation de référence XML. Ainsi, un portlet peut par exemple être identifié par son nom et par les attributs uid de ses parents, et le référencement fonctionne toujours, même si l'ID objet n'est pas disponible pour la recherche du portlet.

L'exportation de configurations de ressources crée normalement des actions update pour tous les éléments exportés. Cela signifie que si la ressource de portail existe sur le système d'importation, les paramètres sont modifiés ; si elle n'existe pas encore, elle est créée. Cela signifie également que si vous réimportez la page dans le portail à partir duquel vous l'aviez exportée, rien n'aura changé.

Vous pouvez importer le fichier XML dans un autre portail pour créer une copie de la page ; cela requiert que les ressources référencées (telles que le portlet et les parents de contenu) existent également sur le portail cible et puissent être trouvées à l'aide d'un attribut d'identification. Dans ce cas, la page et toutes les ressources qu'elle contient conservent leur ID objet, de sorte qu'elles disposent des mêmes ID objet sur le système source et sur le système cible : les ressources conservent leur identité. Vous pouvez éviter cela en utilisant le mode de génération d'ID. Pour plus d'informations, consultez la documentation de référence XML. Lorsque vous utilisez le mode de génération d'ID, les ID objet de l'entrée ne sont pas conservés littéralement : au cours du processus d'importation, les ressources obtiennent de nouveaux ID objet lorsqu'elles sont créées sur le système cible. Pour appliquer le mode de génération d'ID, il suffit d'ajouter l'attribut suivant à la balise de requête principale :


   <request . . . create-oids="true" . . . >  

Vous pouvez créer un double de la page dans le portail à partir duquel vous l'avez exportée en utilisant le mode de génération d'ID et en modifiant le nom unique de la page dans le script XML. Ainsi, la page et son nom modifié sont introuvables pour mise à jour par ID objet ou par nom unique ; par conséquent, une nouvelle page portant les mêmes paramètres est créée. Modifiez le titre de la page afin de pouvoir distinguer les deux pages. Le modèle CopyPage.xml présente l'aspect de ce script.

Lorsque vous exportez des ressources vers des scripts XML, il est possible, et souvent utile, d'exporter plusieurs ressources à l'aide d'une même requête. Le modèle ExportPortletAndPage.xml développe le modèle ExportPage.xml en incluant également le portlet contenu dans la page. Le fichier XML ainsi obtenu contient les données de configuration complètes du portlet et de la page.

Le modèle ExportSubTree.xml présente l'exportation de sous-arborescences de la hiérarchie de contenu du portail. Il exporte une partie de la hiérarchie de page d'administration prédéfinie qui a été créée au cours de l'installation du portail.

Utilisation des caractères génériques :

Lorsque vous exportez des ressources de portail, vous pouvez spécifier l'astérisque (*) en tant que caractère générique pour les attributs de balise. Tenez compte des limitations suivantes :
  1. Le caractère générique astérisque est pris en charge uniquement pour les attributs des balises de niveau supérieur, c'est-à-dire les sous-balises de la balise portal.
  2. Spécifiez l'astérisque pour l'attribut object ID des balises comme suit : objectid='*', sauf pour les balises policy-node, où vous pouvez le spécifier pour l'attribut path.
  3. Indiquez uniquement l'astérisque : "*". L'astérisque ne peut pas être utilisé avec les chaînes de caractères partielles qui le précèdent ou qui le suivent. Par exemple, vous ne pouvez pas indiquer "abc*" ou "*xyz".
  4. Si vous indiquez l'astérisque en tant que caractère générique, tous les autres attributs de cette balise sont ignorés, sauf dans le cas des balises suivantes, où les attributs répertoriés sont interprétés comme filtres :
    • balise content-node, attribut create-type
    • balise tag, attribut locale.
Le modèle ExportAllPortlets.xml présente l'utilisation de l'astérisque (*) comme caractère générique pour exporter toutes les ressources d'un type donné. Cet exemple exporte tous les modules Web ayant été installés dans le portail, ainsi que les portlets qu'ils contiennent.