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
 
             
Introduction à Tomcat

 

Tomcat : un serveur d'applications Java

Comme nous l'avons déjà évoqué, Tomcat est un serveur d'applications Java. Cela signifie deux choses : d'abord, il est intégralement écrit en Java. Ensuite, les applications qu'il est capable d'exécuter (nommées applications web) doivent être développées en Java. Le rôle du serveur d'applications, nous l'avons compris, est double. Il doit savoir exécuter des applications web pour répondre aux requêtes entrantes. Cela passe par des procédures de chargement de classes (nous sommes en Java), d'invocation dynamique... Il doit également être capable de convertir une requête en objet Java, pour qu'elle soit exploitable par l'application. Et, en retour, savoir convertir l'objet Java contenant la réponse générée, en réponse compréhensible par le serveur web. Ces objets Java sont régis par une API, qui répond aux spécifications Servlet officielles. On comprend dès lors qu'un serveur d'applications est subordonné à un langage. Hormis le concept, le serveur d'applis PHP n'a rien à voir avec un serveur d'applis Java !

Le coeur d'un serveur d'applications Java est le conteneur de servlets, puisque les servlets sont les éléments essentiels d'une application web écrite en Java (elles reçoivent les requêtes et renvoient les réponses). Le conteneur de servlets gère des servlets (sait où se trouvent physiquement les classes Java, pour quelles URL les appeler...), et les exécute lorsqu'elles sont demandées.

 

Traiter les requêtes : les connecteurs

Comment un serveur d'applications reçoit-il des requêtes, si celles-ci sont de la même forme qu'il s'agisse de pages statiques ou dynamiques ? Un serveur web classique doit faire relais (voir le fonctionnement d'un serveur d'applications). C'est toujours lui qui, en premier lieu, reçoit les requêtes des clients. S'il constate que la requête n'est pas pour lui, il doit alors la transférer à l'exécutant adéquat. Pour qu'un serveur web puisse transmettre les requêtes à Tomcat, il faut un connecteur spécifique, qui effectue la liaison. De tels connecteurs sont fournis avec Tomcat, notamment pour effectuer la liaison avec le serveur HTTP Apache. Notons que, si l'on demande à Tomcat de jouer les deux rôles (serveur web et serveur d'applis), le connecteur à utilisé est alors celui pouvant recevoir les requêtes HTTP sans intermédiaire.

 

Tomcat, un projet Jakarta

Tomcat est un projet issu de Jakarta, le groupe de projets open-source du groupe Apache dédié à Java. Apache produit un grand nombre d'autres outils open-source, et notamment le fameux serveur HTTP Apache, le serveur le plus utilisé au monde. Tomcat est un serveur également d'une grande qualité, même s'il n'est pas le serveur d'applis Java le plus utilisé ;-)

Comme tous les projets Jakarta, Tomcat est développé par une équipe de bénévoles, et est distribué sous la licence Apache, qui permet son utilisation dans n'importe quel cadre (personnel ou professionnel), y compris commercial. Notons aussi qu'on peut modifier ces projets, sans être contraint de fournir à Apache les sources des modifications effectuées.

La dernière version stable de Tomcat est la 5.0.18. Si ce site a été écrit en fonction de la version 4, la plupart des informations restent d'actualité dans la version 5. Dans le cas contraire, elles seront signalées. En outre, un chapitre est dédié à la version 5, fraîchement sortie, pour en évoquer les nouvelles fonctionnalités. Il explique également les problèmes de compatibilité existants !

 

 

en résumé...

 

- Tomcat est un serveur d'applications Java. Les applications web qu'il est capable d'exécuter sont écrites en Java.

- Pour traiter les requêtes entrantes, il existe des connecteurs capables de véhiculer les requêtes du serveur web frontal au serveur d'applis.

- Tomcat est un projet open source, réalisé par la communauté Jakarta, au sein du groupe Apache.