Installation d'applications d'entreprise à l'aide de l'outil de scriptage wsadmin
Utilisez l'objet AdminApp ou la bibliothèque de scripts AdminApplication pour installer une application dans l'environnement d'exécution du serveur d'applications. Vous pouvez installer un fichier EAR (fichier d'archive d'entreprise), WAR (fichier d'archive d'application web), SAR (fichier d'archive de servlet) ou JAR (fichier d'archive Java™).
Avant de commencer
Si l'installation comporte un déploiement réseau, vérifiez que le gestionnaire de déploiement est en cours d'exécution avant d'installer une application. Utilisez l'utilitaire de commande startManager pour démarrer le gestionnaire de déploiement.
Vous disposez de deux méthodes pour effectuer cette tâche. Grâce à la procédure détaillée dans cette rubrique, vous allez installer des applications d'entreprise à l'aide de l'objet AdminApp. Mais, pour installer, désinstaller et administrer la configuration de vos applications, vous pouvez aussi utiliser les scripts de la bibliothèque de scripts AdminApplication.
La bibliothèque de scripts propose un ensemble de procédures permettant d'automatiser les fonctions d'administration les plus courantes. Vous pouvez exécuter chaque procédure de script individuellement ou combiner plusieurs procédures pour développer rapidement de nouveaux scripts.
Pourquoi et quand exécuter cette tâche
Cette rubrique vous permet d'installer une application issue d'un fichier EAR (fichier d'archive d'entreprise), WAR (fichier d'archive d'application web), SAR (fichier d'archive de servlet) ou JAR (fichier d'archive Java). Pour que l'outil wsadmin puisse effectuer cette installation, le fichier d'archive doit être doté de l'extension .ear, .jar, .sar ou .war. L'outil wsadmin utilise ces extensions pour déterminer le type d'archive. L'outil wsadmin encapsule automatiquement les fichiers WAR et JAR en tant que fichier EAR.

Procédure
Que faire ensuite
Un message de réussite est renvoyé si le système installe correctement l'application. Toutefois, les étapes peuvent aboutir avant que le système n'extraie chaque fichier binaire. Dans un environnement de déploiement réseau, par exemple, des fichiers binaires sont extraits après la fin de la synchronisation du nœud. Vous ne pouvez pas démarrer l'application tant que le système n'a pas extrait tous les fichiers binaires. Utilisez les commandes isAppReady et getDeployStatus de l'objet AdminApp pour vérifier que le système a extrait les fichiers avant de démarrer l'application.
La commande isAppReady renvoie la valeur true si le système est prêt à démarrer l'application, sinon elle renvoie la valeur false. Si l'application ne peut pas être démarrée, le système peut développer les fichiers binaires d'applications. Un script qui installe une application puis la démarre crée en général une boucle autour d'un appel à isAppReady jusqu'à recevoir une valeur true avant de tenter de lancer l'application.
import time
result = AdminApp.isAppReady('application1')
while (result == "false"):
### Attendre 5 secondes avant de revérifier
time.sleep(5)
result = AdminApp.isAppReady('application1')
print("Starting application...")
set result [$AdminApp isAppReady application1]
while {$result == "false"} {
### Attendre 5 secondes avant de revérifier
after 5000
set result [$AdminApp isAppReady application1]
}
puts "Démarrage de l'application..."
Si l'application ne peut pas être démarrée, le système peut développer les fichiers binaires d'applications. Utilisez la commande getDeployStatus pour afficher les informations supplémentaires sur le statut de développement des fichiers binaires, comme illustré ci-dessus :
print AdminApp.getDeployStatus('application1')
A l'aide de Jacl :$AdminApp getDeployStatus application1
L'exécution de la commande getDeployStatus, où application1 correspond à DefaultApplication, permet d'afficher des informations d'état sur DefaultApplication, qui se présentent comme suit :
ADMA5071I: Vérification de l'état de la distribution démarrée pour l'application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown
ADMA5011I : Le nettoyage du répertoire temp pour l'application DefaultApplication est terminé.
ADMA5072I : Vérification de l'état de la distribution terminée pour l'application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown