Java & le web
x Le web dynamique
x Java & le web

Intro à Tomcat
x Serveur d'applications
x Présentation Tomcat
x Installation
x Arborescence

Configuration
x Introduction
x Server
x Service
x Engine
x Host
x Context
x DefaultContext
x Logger
x Loader
x Realm
x Valve

Connecteurs
x Balise Connector
x Coyote HTTP/1.1

Sécurisation accès
x La balise Realm
x Memory Based
x JDBC Database
x Protéger ressources
x Cryptage password

Les Valve
x La balise Valve
x Access Log
x Single Sign-On

Fonctionnalités
x Déploiement auto.
x Class loaders

Eclipse & Tomcat
x Plug-in pour Eclipse
x Projet Tomcat
x Debugger des JSP

Créer une appli web
x Présentation
x Architecture
x Fichier web.xml
x Déploiement

Tomcat 5
x Nouveautés

Tomcat's Corner
x Crédits
x Liens
 
             
Déploiement automatique d'applications

 

Si, dans le fichier de configuration de Tomcat, dans une balise Host, vous avez défini l'attribut autoDeploy à true (ou que vous ne l'avez pas spécifié, true étant sa valeur par défaut), le déploiement automatiquement d'applications aura lieu. Il se comporte de la manière suivante :

  • Les archives WAR (Web Application Archives) non déployées sont tous les fichiers *.war du répertoire appBase (voir configuration de Host) pour lesquels il n'existe pas de répertoire portant le même nom dans ce même répertoire. Exemple : si un fichier "monappli.war" existe, mais qu'il n'y a pas de répertoire "monappli" dans appBase, l'application est considérée comme non déployée. Dans ce cas, le WAR sera automatiquement déployé, dans un répertoire portant le même nom. Attention toutefois, vous pouvez empêcher cette procédure en définissant le paramètre unpackWARs à false (voir configuration de Host).

    Donc, si vous souhaitez mettre à jour un WAR, n'oubliez pas de supprimer le répertoire associé pour bénéficier du déploiement automatique au prochain démarrage du serveur.
  • En ce qui concerne les applications non compactées (un répertoire est présent dans appBase, sans fichier WAR portant le même nom), ils se verront affecter un Context automatique dans le fichier server.xml. Ce contexte sera configuré en fonction du DefaultContext éventuellement spécifié pour le Host associé. Le chemin pour ce contexte (c'est-à-dire son URL relative) sera le nom du répertoire. C'est-à-dire que, si Tomcat trouve un répertoire nommé monAppli contenant un fichier web.xml (une webapp donc), il lui fournira automatiquement le contexte /monAppli. On pourra ainsi accéder à cette application.
  • Dans le répertoire appBase d'un Host, on peut aussi trouver des fichiers de configuration de Context. C'est-à-dire des fichiers XML contenant comme élément de base un Context, et tous les sous-éléments que l'on peut souhaiter. Il s'agit en fait ici de délocaliser les informations de contexte d'une application. Ce qui s'avère intéressant, car ces fichiers peuvent être pris en compte (et les applications correspondantes déployées) sans que le serveur redémarre. Alors que toute modification du fichier server.xml nécessite un redémarrage de Tomcat pour être effective.

 

Notons enfin que ce déploiement automatique peut également intervenir pendant l'exécution de Tomcat. En paramétrant liveDeploy à true dans un Host, les applications web (WAR, répertoires) ajoutées pendant l'exécution de Tomcat seront elles aussi déployées automatiquement.