Ajout d'un code personnalisé à un fichier Portal Application Archive (PAA)

Les développeurs de solutions peuvent créer des applications qui utilisent les types de ressources que Solution Installer ne génère pas automatiquement. Solution Installer gère un grand nombre de types de ressources. Toutefois, certains types de ressources ne disposent d'aucun mécanisme d'exécution de procédures d'installation précises. Il peut arriver que votre application nécessite de définir des paramètres de configuration supplémentaires pour l'installation. Ces applications requièrent un code personnalisé pour l'installation.

Où placer un code personnalisé dans le fichier Portal Application Archive (PAA)

Un exemple de fichier PAA se trouve dans le répertoire PortalServer_root/doc/paa-samples/sample1.paa. Cet exemple contient l'exemple de fichier de composant : sample1/components/sample1. Ce fichier contient les répertoires config/include et config/templates. Le code personnalisé et le code généré Solution Installer sont stockés dans ces deux répertoires. Le répertoire config/templates doit contenir les scripts supplémentaires nécessaires à l'installation. La configuration d'un fichier .war est un exemple de script supplémentaire. Le répertoire config/include doit contenir les tâches ANT personnalisées. Les scripts dans le répertoire config/include sont sélectionnés lors de l'exécution.

Dénomination des fichiers de code personnalisé

Il n'existe aucune restriction relative aux noms de fichier contenant les codes personnalisés. Solution Installer ajoute automatiquement le code généré au fichier. Il utilise la partie du nom du composant qui suit / en la combinant à la chaîne _cfg.xml. En utilisant l'exemple de composant sample_paa/components/componentN, le nom du composant est components/componentN. Par conséquent, le fichier est dénommé componentN_cfg.xml.

Pour les installations de fichier WAR depuis le répertoire installableApps/portlets, les scripts d'accès XML d'installation et de désinstallation sont générés avec des noms de fichiers à l'aide des chaînes suivantes :
  • -portlets-install.xml
  • -portlets-uninstall.xml
  • -portletDataGen.xml
Par exemple, si vous disposez d'un fichier WAR appelé MyWar.war, les fichiers suivants sont créés :
  • MyWar.war-portlets-install.xml
  • MyWar.war-portlets-uninstall.xml
  • MyWar.war-portletDataGen.xml

Vous devez nommer les fichiers qui contiennent des tâches personnalisées ANT de sorte que Solution Installer ne les remplace pas.

Fichier sdd.xml de niveau composant

Le fichier sdd.xml de niveau composant se trouve dans le répertoire des composants. En prenant l'exemple de sample_paa/components/componentN, le fichier sdd.xml est situé dans le répertoire componentN. Le fichier sdd.xml est nécessaire uniquement si vous disposez d'un code personnalisé. Autrement, Solution Installer le génère.

Ajoutez un élément <scu> au fichier sdd.xml de niveau composant pour enregistrer le code dans ConfigEngine.

Exemple de code personnalisé

L'exemple de code suivant utilise l'élément <scu> pour le point d'extension create-ear. Le code indique à Solution Installer qu'il doit remplacer la fonctionnalité create-ear. Le nom complet de l'extension est create-ear-applySIFeaturePack. La partie create-ear indique à ConfigEngine le type de fonctionnalité d'installation utilisée pour regrouper les tâches à exécuter. La partie -applySIFeaturePack permet à Solution Installer d'appeler la fonctionnalité de ConfigEngine pour les composants qui sont conformes à ce schéma de dénomination. Dans ce cas, la possibilité que d'autres composants, tels que core portal, soient supprimés lors de la désinstallation est réduite.
<SCU id="create-ear-applySIFeaturePack" targetRef="OS">
	<identity>
		<name>create-ear-applySIFeaturePack</name>
		<version>1.0.0</version>
		<displayName key="deploy-apps-applySIFeaturePack" default="Executes
			Configuration for this component" />
		<description key="deploy-apps-applySIFeaturePack" default="Executes
			Configuration for this component" />
	</identity>
	<unit>
		<configArtifact type="ConfigEngine">
		<parameters>
		<parameter name="targetName" value="create-ear-applySIFeaturePack" />
		</parameters>
		</configArtifact>
	</unit>
</SCU>
Après avoir enregistré le point d'extension avec le fichier sdd.xml, une tâche d'implémentation doit être créée pour remplacer la fonctionnalité par défaut. La tâche doit se trouver dans le répertoire du composant config/includes. Une convention de dénomination spécifique s'applique à la tâche pour l'associer directement à l'élément <scu> dans le fichier sdd.xml. Utilisez la convention de dénomination suivante :
'action;' + extension point name = '-' = componentname	
Par exemple: Par exemple, action-create-ear-applySIFeaturePack-components/componentN.
Conseil : Utilisez le chemin complet du composant comme nom de composant.