====== Serveur Tomcat ======
====== Introduction ======
Une définition de Tomcat se trouve sur Wikipedia ( http://fr.wikipedia.org/wiki/Tomcat_(serveur) ). Pour faire simple, il permet de faire fonctionner des applications java accessibles via une interface Web tout ce qu’il y a de plus classique. Il nécessite tout de même la machine Java JDK.
Ceci est un tutoriel simple afin de se familiariser avec Tomcat. Il n’a pas pour vocation de tout expliquer. Plusieurs chemin d’installation seront suggérés de manière arbitraire (notés *), si vous savez ce que vous faites, adaptez-les selon votre configuration. Pour le reste, j’évoque une configuration type pour les machines clientes et serveur (lan etc …), adaptez selon votre configuration et surtout si vous savez ce que vous faites.
====== Prérequis ======
* Un Lan (ici, en 192.168.0.0/24 )
* Un Pc/Mac client (situé dans le Lan)
* Debian Etch (installation Minimale, ici en adresse 192.168.0.10)
* Et aussi ssh pour un accès distant (et oui, pas de serveur graphique donc pas besoin d'écran ni de clavier une fois installée !)
====== Installation de Tomcat5.5 ======
===== Une commande =====
''aptitude install tomcat5.5-webapps''
Les dépendances s'installeront d'elles même.
ATTENTION !!!
Le paquet tomcat5.5 de Debian (et aussi Ubuntu) est buggué, il ne pourra pas se lancer correctement tant que la machine java ne sera pas spécifiée. Il n'y a pas de soucis majeur, il faudra juste suivre la procédure que je vais indiquer... En attendant, restez avec cette erreur :
''Des erreurs ont été rencontrées pendant l'exécution :
tomcat5.5
tomcat5.5-webapps''
====== Installation de java JDK 1.6 ======
Accédez à la [[http://java.sun.com/javase/downloads/index.jsp|page de téléchargement]] pour le jdk1.6. Choisissez //JDK 6 Update 2//.
**Linux self-extracting file (build 05) jdk-6u2-linux-i586.bin 55.66 MB** --> Ça
Une fois sur le serveur, déplacez le binaire dans le repertoire ou il sera installé (je le met dans /opt pour plus de clareté) :
''mv jdk-6u2-linux-i586.bin /opt''
''cd /opt''
''chmod +x jdk-6u2-linux-i586.bin''
''./jdk-6u2-linux-i586.bin''
Java sera installé dans :
''debian:/opt# ls /opt/jdk1.6.0_02
bin demo jre LICENSE README.html README_zh_CN.html src.zip
COPYRIGHT include lib man README_ja.html sample THIRDPARTYLICENSEREADME.txt''
Java est installé...
====== Configuration ======
===== Tomcat & JDK 1.6 =====
Le fichier en question à modifier est ///etc/init.d/tomcat5.5//,Tomcat doit reconnaître du premier coup la version du JDK a utiliser.
Pour se faire ajoutez dedans la variables nécessaire (mettez la par exemple apèrs la ligne //CATALINA_HOME//:
''JAVA_HOME=/opt/jdk1.6.0_02''
Une fois fait, vous pouvez finaliser l'installation pour que aptitude soit "sûr" que tout est correctement configuré de son coté.
''aptitude install -f''
Il se peut que Tomcat mette un peu de temps a redémarrer, ne vous précipitez donc pas sur la touche ''Actualiser la page'' de votre navigateur juste après le démarrage de Tomcat :)...
===== Lancement et test =====
''/etc/init.d/tomcat5.5 restart''
On teste en accédant a cette page depuis un navigateur :
http://192.168.0.10:8180
On doit voir la page d'admin de Tomcat.
====== Les applications ======
Elles sont stockées par défaut dans ///var/lib/tomcat5.5/webapps//
Mais peuvent aussi être dans ///usr/share/tomcat5.5-webapps// ...
Cela est apparament du a une sombre histoire de compatiblité ascendante avec les enciennes version mais aussi ... d'humeur :p
Il est aussi possible de situer ses application ailleurs que dans ces répertoires à condition de le mentionner a Tomcat via un fichier xml a placer dans ///usr/share/tomcat5.5/conf/Catalina/localhost//. Je ne m'étend pas sur le sujet pour le moment par manque de connaissances solides ^^. Placez-les a défaut dans ///var/lib/tomcat5.5/webapps// !
====== Administration de Tomcat (facultatif) ======
Définir les utilisateurs pour Tomcat :
Modifier le fichier ///opt/tomcat5/conf/tomcat-users.xml// pour avoir :
''
''
Vous pourrez ainsi surveiller et administrer votre serveur Tomcat via la page http://192.168.0.10:8081
====== Enfin ... ======
Attention !!!
Il se peut que certaines applications java supportent mal une option de Tomcat5.5 par défaut (c'est le cas de OpenAguila et OpenSI par exemple). Aller dans ///etc/default/tomcat5.5// pour chercher la ligne //#TOMCAT5_SECURITY=yes//.
Enlevez le //#// et remplacez //yes// par //no//.
Cela donne :
''TOMCAT5_SECURITY=no''
===== Quelques petites options ... =====
* Si vos applications nécessitent un encodage de carctère particulier, éditez le fichier ///etc/init.d/tomcat5.5// et réglez votre encodage avec une ligne du type :
''CATALINA_OPTS="-Dfile.encoding=iso8859-1"''
Ou iso8859-1 est le type d'encodage de caractère.
* Si vos application nécessite une quantité de mémoire plus importante, ajoutez-y ceci :
''JAVA_OPTS="-server -Xms512M -Xmx512M"''
Placez ces lignes juste après //JAVA_HOME=// par exemple.
===== Tout reste à faire ! =====
Tomcat propose quelques exemple d'applications Java. Je laisse le soin aux développeurs Java de créer leurs appplications...
Je vais par la suite présenter comment il est possible de faire tourner Tomcat via le serveur Web Apache2 plus souple et plus performant que Tomcat. Ainsi, il sera possible de passer par le port 80 de Apache et même de faire passer vos application via le mode SSL de Apache2.