mardi 20 novembre 2007

Installer son tomcat

Installer son tomcat

Maintenant que nous avons vu la théorie, il est temps de commencer la pratique. Avant de commencer il peut être bon de vous avertir que les opérations à venir ne prennent pas une demi heure. Ne vous attendez donc pas à voir fonctionner l'application de démonstration dans le quart d'heure à venir.

Tomcat

Installation

Tomcat est un chef d'oeuvre de simplicité à installer

Pour nos expériences nous allons nous servir de la version 5 du serveur, bien qu'il ne s'agisse pas encore de la version la plus répandue du serveur, elle peut servir dans un contexte de production :

http://jakarta.apache.org/ est l'url de référence pour tous les projets sous licence apache. Bien que cette page puisse sembler relativement austère, beaucoup de composants JAVA de Jakarta ont su s'imposer sur le marché. On y trouve entre autre tomcat et struts :

Tomcat : http://jakarta.apache.org/tomcat

Struts : http://stuts.apache.org/

Cliquez sur le liens download binaries et cherchez tomcat et struts. Comme c'est du code open source, prennez l'habitude, à chaque fois que vous téléchargez un programme pour le developpement d'également télécharger son code source. C'est lavantage de l'open source, un petit coup d'oeil dans le code source vous épargnera peut-être des heures et des heures de tatonnement irrationnels comme cela se produit dans les Apis propriétaires. Vérifiez bien que les versions binaires correspondent au sources.

Note :

Si l'envie folle vous prend de procéder à l'ancienne :"Je compile mon projet". Sachez que les dépendances pour les constructions tomcat sont abracadabrantesques et rappelez vous que le java est portable, c'est donc sans bénéfice pour la performance mais cela vous permettra de debugger et de placer des trace dans le code source. Dézzipper votre tomcat à l'endroit ou vous souhaitez le voir s'exécuter. Par défaut, tomcat n'écrira que dans des sous répertoires de son répertoire racine.

Affectez une variable JAVA_HOME sur le chemin de votre JDK (Pas JRE) en cliquant sur le bouton droit droit sur le poste de travail dans windows.

Placez vous dans le répertoire de tomcat/bin et lancez la commande startup.sh startup.bat suivant que vous vous trouvez sur Linux ou sur Windows. Vous venez d'installer Tomcat. Félicitations !

Maintenant vous pouvez voir le résultat :

http://localhost:8080/

Note :

Il est possible que votre OS fournissent une distribution de Tomcat avec des chemins d'installation diffèrents de ceux par proposé par défault. Je recommande plutôt d'utiliser une arborescence identique à celle qui est proposée dans l'archive de la fondation apache tant qu'il s'agit de développement.

Voici ce que vous devez voir.

Installer les options d'administration

Pour pouvoir contrôler tomcat à distance il est nécessaire d'activer les utilisateurs d'administration. Placez vous dans le répertoire $TOMCAT_HOME/conf

Editez le fichier tomcat-users.xml pour qu'il ressemble à ceci :

Redémarrez tomcat et connectez vous à l'URL. Il vous affiche le manager d'application qui vous permet de lister et de contrôler les différentes applications déployées sur le serveur.

http://localhost:8080/manager/html

Installer Eclipse

Eclipse se télécharge ici : Installez la version 3.0.

http://www.eclipse.org

Comme nous allons nous servir de tomcat, nous allons utiliser le plugin Sysdeo qui permet de contrôller tomcat à travers eclipse. Pour installer le plugin, dezippez simplement l'archive dans l'arborescence de eclipse et relancez eclipse

http://www.sysdeo.com/eclipse/tomcatPlugin.html

Configurez le pluggin dans le menu préférences afin qu'il sache dialoguer avec tomcat.

Nous sommes prêt à travailler sur une application réelle.

L'application de démonstration

L'application de démonstration nous présente une application relativement complexe où vous pourrez retrouver beaucoup des problèmes que l'on peu rencontrer dans le web. Elle présente les notions de :

  • Connection à une base de données
  • Login et Enregistrement d'utilisateur
  • Utilisation du controleur Strut pour le contrôleur
  • Internationalisation (Charset et détection)
  • Gestion de formulaire dynamique
  • Boucle de traitement simple et imbriquée
  • Sécurisation de la partie administration

Téléchargez l'application de démonstration ici. Elle se présente sous la forme d'une archive WEB (.war) qui est en fait un zip ou les fichiers se trouvent organisé d'une manière spéciale. Pour la déployer il suffit de la copier dans le répertoire webapp de tomcat, l'extraction des fichiers se fait automatiquement.

Maintenant quand vous vous connecter sur l'application manager vous devez appercevoir l'application QuizzTomcat dans la liste.

Cependant, cette application s'appuie sur une base de donnée et il faut l'installer ! Courage c'est presque fini !

Installation de MySQLpour l'application de démonstration

Téléchargez mysql en vesion 4.0 ici

Dans le répertoire c:\mysql\bin lancez winmysqladmin et installez MySQL en temps que service. Lancez en ligne de commande le programme

mysql -uroot

Vous êtes l'utilisateur d'administration. Maintenant nous allons créer la database et donner les droit à l'utilisateur quizz d'accéder à cette database.

mysql>create database quizz;
mysql>grant all privileges on quizz.* to quizz@localhost identified by 'quizz';
mysql>use quizz;

Nous allons créer les tables nécessaires à l'application de démonstration avec le fichier quizz.dmp qui se trouve dans QuizzTomcat/WEB-INF/sql/quizz.dmp à l'intérieur de la WebApp.

Suit une volée d'insultes et peut-être des bip si votre ordinateur est un bavard.

Voila la base de données est initialisée.

Configuration de l'application WEB

Maintenant, prennez le fichier jar qui se trouve dans WEB-INF/lib/mysql-connector-bin.jar et copier le dans le répertoire tomcat/common/lib.

Connectez vous à la console d'administration de tomcat et tapez le user et le mot passe tomcat pour vous connecter.

Placez vous sur Service->Host->Context(QuizzTomcat)->DataSource et selectionnez Create a new DataSource. Et rentrez les paramètres de la data source. Sauvez et commit les changements.

Pour vérifier que tout s'est bien passé, il faut aller voir dans le fichier TOMCAT_HOME/conf/Catalina/localhost/QuizzTomcat.xml qui est le fichier de contexte.

Il doit avoir l'allure suivante :



 <context displayname="Quizz App" docbase="C:\Documents and    Settings\Propriétaire\Bureau\eclipse\workspace\QuizzTomcat" path="/QuizzTomcat" reloadable="true" workdir="C:\Documents    and Settings\Propriétaire\Bureau\eclipse\workspace\QuizzTomcat\work">
<resource name="jdbc/Quizz" type="javax.sql.DataSource">
<resourceparams name="jdbc/Quizz">
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>4</value>
</parameter>
<parameter>
<name>password</name>
<value>quizz</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost/quizz?autoReconnect=true</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>2</value>
</parameter>
<parameter>
<name>username</name>
<value>quizz</value>
</parameter>
</resourceparams>
<resourcelink global="UserDatabase" name="users" type="org.apache.catalina.UserDatabase">
</resourcelink></resource></context>



Avant de commencer à rentrer dans le détail du code dans le chapitre suivant, il serait bon que vous parcouriez l'application de démonstration QuizzTomcat

Note :

L'application de démonstration ne resemble pas à ce qu'on pourrait appeler un Tutorial, pour deux raisons

  • D'abord, en ne restant que sur des applications simples, on se préserve des questions qui font mal quand on passe au réel .
  • Ce cours est fait pour être détaillé de vive voix.

Aucun commentaire: