Vous êtes sur la page 1sur 13

Java pour le dveloppement dapplications Web : Java EE

Configuration et installation dun serveur dapplication : Tomcat


Mickal BARON - 2007 (Rv. Aot 2009) mailto:baron.mickael@gmail.com ou mailto:baron@ensma.fr

Licence

Creative Commons
Contrat Paternit Partage des Conditions Initiales l'Identique
2.0 France

keulkeul.blogspot.com

http://creativecommons.org/licenses/by-sa/2.0/fr
Conf. Tomcat - M. Baron - Page 2

Conteneurs de Servlet Rappel : une Servlet sexcute dans un moteur de Servlet ou conteneur de Servlet permettant dtablir le lien entre la Servlet et le serveur Web Deux types de conteneurs
Conteneurs de Servlets autonomes : cest un serveur WWW qui intgre le support des Servlets Conteneurs de Servlets additionnels : fonctionnent comme un plug-in un serveur WWW existant

Nombreux conteneurs de Servlet


Tomcat Server dApache (jakarta.apache.org)
keulkeul.blogspot.com

JBoss (www.jboss.org) WebSphere Application Server dIBM (www.ibm.com) Weblogic de BEA (www.bea.com) GlassFish de Sun (www.java.sun.com) JOnAS ObjectWeb (jonas.objectweb.org)
Conf. Tomcat - M. Baron - Page 3

Jakarta Tomcat Tomcat 6.x respecte la spcification Servlet 2.5 et JSP 2.1 crit entirement en Java, il peut donc tre utilis sur nimporte quel systme disposant dune machine virtuelle Disponible gratuitement sous forme dune licence Open Source Ncessite obligatoirement une machine virtuelle respectant la spcification 5.0 (jre 1.5.0)
keulkeul.blogspot.com

Implmentation de rfrence de la spcification Java EE. Il fournit donc les librairies de faon concevoir des Servlets (javax.servlet.http.HttpServlet) Pourquoi celui-ci et pas un autre :
Gratuit et facile installer !!!
Conf. Tomcat - M. Baron - Page 4

Installation de Tomcat : spciale Linux Dcompresser larchive dans un rpertoire de OS (/home/baron/tomcat)


Prfrer la version archive qui est utilisable sur tous les OS la version excutable Windows

Modifier la variable PATH de lOS de faon prendre en compte le chemin binaire de Tomcat
(PATH=$PATH:/home/baron/tomcat/bin)

Ajouter la variable CATALINA_HOME qui pointe sur le chemin de Tomcat (CATALINA_HOME=/home/baron/tomcat) Ajouter la variable JAVA_HOME qui pointe sur le chemin de la machine virtuelle (JAVA_HOME=/home/baron/jdk1.5.0)
keulkeul.blogspot.com

Complter la variable CLASSPATH qui pointe sur les librairies Java EE (CLASSPATH=$CLASSPATH:/home/baron/tomcat/common/lib) Pour vrifier que votre serveur de chat fonctionne lancer startup.sh Conf. Tomcat
- M. Baron - Page 5

Hirarchie des rpertoires Tomcat Organisation partielle des rpertoires de Tomcat


bin

Scripts de lancement et darrt du Serveur Tomcat

common

lib classes ...

jar utiliss par Tomcat pour fonctionner. Contient galement les librairie correspondant limplmentation de la spcification Java EE Fichiers de configuration : server.xml, web.xml et tomcat-users.xml

conf Tomcat

logs

Fichiers de logs relatifs des erreurs

keulkeul.blogspot.com

shared

lib

Fichiers jar communs toutes les Servlets Zone de dploiement

webapps

Conf. Tomcat - M. Baron - Page 6

Ajout, Suppression et modification des rles Un rle cest quoi ?


Permet dajouter des utilisateurs et de dfinir des droits sur les Servlets Utiliser pour lidentification base de rles

Les rles sont dfinis dans le fichier tomcat-users.xml


La modification peut se faire directement sur le fichier ou via la Servlet Administration
<?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="identification"/> <role rolename="manager"/> <role rolename="test"/> <role rolename="admin"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="role1" password="tomcat" roles="role1"/> <user username="mickael" password="baron" roles="test"/> <user username="admin" password="baron" roles="admin,manager"/> </tomcat-users>

keulkeul.blogspot.com

Les Servlets identification par rles nautorisent que les utilisateurs dont les rles sont test

Attention la premire utilisation du Serveur il faut modifier tomcat-user.xml pour ajouter le compte admin et manager

Conf. Tomcat - M. Baron - Page 7

Ajout, Suppression et modification des rles La Servlet Administration permet via une interface WEB de modifier certains lments du serveur Tomcat et notamment les rles
Actions pour crer un nouveau rle

Possibilit dajouter des utilisateurs et de dfinir des groupes

keulkeul.blogspot.com

Attention pour utiliser la Servlet Administration il faut que le compte admin soit cr

Conf. Tomcat - M. Baron - Page 8

Dploiement des applications WEB Pour le dploiement de votre application WEB il faut absolument respecter la structure dfinie dans la partie prcdente Le dploiement permet dindiquer au conteneur de Servlets
O se trouve le rpertoire physique de votre application WEB Prciser pour le contexte dune lapplication WEB o se trouve les ressources sur le serveur Tomcat
Adresse du Serveur
keulkeul.blogspot.com

Port

Contexte de l'application WEB

http://localhost:8080/HelloWorldServlet http://localhost:8080/HelloWorldServlet/bonjour.maservlet http://localhost:8080/HelloWorldServlet/toutou.maservlet http://localhost:8080/HelloWorldServlet/*.maservlet


Conf. Tomcat - M. Baron - Page 9

Dploiement des applications WEB : le contexte Le contexte est dfini


path="/HelloWorldServlet" : URL daccs docBase="/home/baron/HelloWorldServlet" : chemin daccs des fichiers (absolu ou relatif par rapport au rpertoire webapps) reloadable="true" : dtection automatique des changements et
rechargement si besoin

workDir="/home/baron/HelloWorldServlet/work" : rpertoire
temporaire dans lequel lapplication pourra effectuer certaines oprations
keulkeul.blogspot.com

crossContext="true" : autorise la communication intercontextes

Plusieurs solutions sont donnes pour prciser le contexte dune application WEB au serveur
Modification manuelle des fichiers de configuration Utilisation de loutil manager
Conf. Tomcat - M. Baron - Page 10

Dploiement des applications WEB : la main Solution 1 : modification de $CATALINA_HOME/conf/server.xml


Ajouter la fin de la balise HOST la balise CONTEXT
... <Host> ... <Context path="/HelloWorldServlet" reloadable="true" docBase="/home/baron/HelloWorldServlet" workDir="/home/baron/HelloWorldServlet/work" reloadable=true /> </Host> ...

Solution 2 : ajouter un fichier (le nom du projet WEB) dans le rpertoire $CATALINA_HOME/conf/Catalina/localhost/
Le fichier doit porter le mme nom que le rpertoire du projet WEB
keulkeul.blogspot.com
<Context path="/HelloWorldServlet" reloadable="true" docBase="/home/baron/HelloWorldServlet" workDir="/home/baron/HelloWorldServlet/work" reloadable=true />

Cette solution est utilise par Eclipse avec le plugin Sysdeo Tomcat

Conf. Tomcat - M. Baron - Page 11

Dploiement des applications WEB : outil manager Solution 3 : utilisation du gestionnaire dapplications WEB

Liste des applications WEB contenues sur le Serveur Tomcat

keulkeul.blogspot.com

Dploiement des applications sans redmarrer le Serveur Dploiement des applications sous forme WAR sans redmarrer le Serveur
Conf. Tomcat - M. Baron - Page 12

Dploiement des applications WEB : outil manager


Le chemin de contexte Exemple : /HelloWorldServlet

keulkeul.blogspot.com

Le chemin physique o se trouve la Servlet Exemple : /home/baron/HelloWorldServlet Les fichiers WAR ne sont ni plus ni moins que des JAR (renommage). Il faut obligatoirement que le rpertoire WEB-INF soit la racine de larchive

Le nom du fichier web.xml Exemple : web.xml

Conf. Tomcat - M. Baron - Page 13

Vous aimerez peut-être aussi