Vous pouvez déployer des applications Web, des applications d'entreprise ou des applications OSGi dans Liberty. Pour déployer une application, vous pouvez la déposer dans un
répertoire de dépôt précédemment défini ou ajouter une entrée d'application à la configuration du serveur.
Vous pouvez également déployer des applications dans les serveurs Liberty à l'aide des outils de développement.
Pourquoi et quand exécuter cette tâche
Par défaut, le répertoire de dépôt ("dropins") est automatiquement
surveillé. Si vous y déposez une application, elle est automatiquement déployée sur le
serveur. Réciproquement, si vous supprimez l'application du répertoire,
elle est automatiquement retirée du serveur.
Le répertoire "dropins" peut servir à déployer les applications qui ne nécessitent pas de configuration supplémentaire, comme le mappage des rôles de sécurité. Si vous placez vos applications dans le répertoire "dropins", vous ne devez pas inclure d'entrée pour l'application dans la configuration du serveur. Sinon, le serveur tente de charger l'application deux fois et une erreur peut survenir. Pour déployer une application située ailleurs que dans le répertoire "dropins", spécifiez son emplacement au moyen d'une entrée application dans la configuration du serveur. Il peut s'agir d'un emplacement dans le système de fichiers ou d'une adresse URL.
L'application à déployer peut
être conditionnée dans un fichier archive, un répertoire, ou en tant qu'application souple où les
fichiers se trouvent à plusieurs emplacements. Pour plus d'informations sur les applications souples, voir Applications souples.
Dans le cas des applications qui se trouvent dans le répertoire "dropins", le nom et l'extension de
fichier sont utilisés par le moniteur d'applications afin de déterminer le type de l'application et de générer
l'ID et le nom de l'application. Par exemple, si le fichier archive ou le répertoire se nomme snoop.war,
le moniteur considère qu'il s'agit d'une application Web, et que son nom et son ID est "snoop". Pour les applications configurées, le type et le nom de l'application son
spécifiés.
Pour plus d'informations sur la structure de répertoires par défaut et sur les propriétés qui sont associées aux répertoires (par exemple server.config.dir), voir Emplacement des répertoires et des propriétés.
Remarque : Si
vous modifiez une application dans le répertoire "dropins", l'application est redémarrée à moins que la modification porte sur un composant d'un fichier WAR situé en dehors du dossier WEB-INF.
- Déployez une application en la déposant dans le répertoire dropins.
Par exemple, si la structure de répertoires par défaut est conservée, déposez l'application dans le répertoire ${server.config.dir}/dropins (c'est-à-dire
wlp/usr/servers/nom_serveur/dropins).
Vous
pouvez déployer votre application de l'une des manières suivantes :
- Placez le fichier archive avec le suffixe qui l'identifie (.ear, .war,
etc) directement dans le répertoire /dropins. Exemple : ${server.config.dir}/dropins/myApp.war
- Procédez à l'extraction du fichier archive dans un répertoire incluant le nom de l'application et le suffixe qui l'identifie. Exemple : ${server.config.dir}/dropins/myApp.war/WEB-INF/...
- Placez le fichier archive ou l'archive extraite dans un sous-répertoire incluant le suffixe identificateur. Exemple : ${server.config.dir}/dropins/war/myApp/WEB-INF/...
- Déployez une application en l'ajoutant dans le fichier de configuration de serveur.
Configurez l'élément
application dans le fichier de configuration
server.xml. Pour plus d'informations, consultez la
description de l'élément
application
dans
Enterprise JavaBeans Lite 3.1,
Java Servlets 3.0 et
OSGi Blueprint. Vous devez configurer les attributs suivants de l'élément application :
- id
- Il doit être unique et utilisé en interne par le serveur.
- name
- Il doit être unique et dépend de l'application. La valeur de name peut être utilisée comme élément context-root de l'application. Pour savoir comment la racine de contexte est définie pour une application,
voir Déploiement d'une application Web sur Liberty.
- type
- Précise le type de l'application.
- Pour les applications Web, le type pris en charge est war.
- Pour les applications d'entreprise, le type pris en charge est ear.
- Pour les applications OSGi, les types pris en charge sont eba et
esa.
- location
- Indique l'emplacement de l'application. Il peut s'agir d'un chemin absolu ou d'une URL à partir de laquelle vous pouvez télécharger l'application. Il peut aussi s'agir du nom de fichier de votre application (avec
éventuellement son extension de nom de fichier).
Si l'application est disponible dans le système de fichiers, son emplacement peut être
soit le nom de chemin complet, soit un simple nom de fichier. Si le chemin complet n'est pas
inclus, le gestionnaire d'applications recherche l'application
dans ${server.config.dir}/apps
et dans ${shared.app.dir}. Si l'application est disponible à une adresse URL, le gestionnaire d'applications
la télécharge dans un dossier temporaire, à l'intérieur de la zone de travail du
serveur (répertoire workarea selon la structure par défaut), puis il la démarre.
Remarque : Dans le cas d'une application déclarée par une entrée dans la configuration du serveur, l'emplacement que vous spécifiez ne doit pas se trouver dans le répertoire "dropins". Si vous déposez une application dans le répertoire "dropins" et que vous
la déclarez également avec cet emplacement dans le fichier server.xml,
vous demandez au serveur de la déployer deux fois.
Dans les deux exemples suivants, l'emplacement est répertoire du système de fichiers. Si l'emplacement est une URL, entrez celle-ci dans le champ
'location'.
<osgiApplication location="D:/apps/ImpactEBA.eba"/>
<webApplication location="ImpactWeb.war"/>
Le deuxième exemple
n'inclut pas le chemin complet. Dans ce cas, le fichier de l'application doit nécessairement se
trouver dans l'un des emplacements suivants :
- ${server.config.dir}/apps
(c'est-à-dire répertoire_serveur/user/servers/nom_serveur/apps)
- ${shared.app.dir} (c'est-à-dire emplacement_installation_liberty/usr/shared/apps)
Vous pouvez déployer votre application dans le système de fichiers
des manières suivantes :
- Placez le fichier archive avec le suffixe qui l'identifie (.ear, .war,
etc) directement dans l'emplacement de votre choix. Par exemple, application_directory_path/myApp.war
- Procédez à l'extraction du fichier archive dans un sous-répertoire de l'emplacement choisi dont le nom correspond au nom de l'application et au suffixe qui l'identifie. Par exemple,application_directory_path/myApp.war/WEB-INF/...
Remarque : - Vous devez créer le répertoire apps au niveau de chaque serveur,
alors que le répertoire apps partagé est déjà présent par défaut. Pour plus d'informations sur les propriétés associées aux répertoires des
serveurs, voir Emplacement des répertoires et des propriétés.
- L'élément application peut être défini avant ou après le démarrage du serveur. Dans le second cas, les changements sont pris en compte dynamiquement.
- Déployez des applications sur Liberty à l'aide d'outils de développement.
- Supprimer une application.
Si l'application est incluse par une déclaration dans la configuration du serveur,
supprimez la référence correspondante
du fichier server.xml. L'application est alors retirée automatiquement
du serveur.
Si l'application a été déployée par dépôt d'un fichier dans
le répertoire "dropins", supprimez ce fichier
du répertoire. L'application est alors retirée automatiquement
du serveur.
Pour désinstaller toutes les applications qui se trouvent dans le répertoire "dropins", associez la propriété dropinsEnabled du moniteur d'applications à la valeur false, comme décrit dans Contrôle des mises à jour dynamiques.