Vous êtes sur la page 1sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Dveloppement de Servlets et JSP avec Eclipse

Sommaire

1 Mise en place o 1.1 Installation de Galileo o 1.2 Association de Galileo avec une installation de Tomcat o 1.3 Pilotage des serveurs 2 Dveloppement d'une application Web o 2.1 Cration d'un projet 'Web dynamique' o 2.2 Dveloppement d'un Servlet o 2.3 Dveloppement d'une JSP o 2.4 Notion de projet dpendant
o

2.5 Exporter l'application

Mise en place
Pour ce cours, la mise en place consiste en l'installation d'un JDK, d'Eclipse Web Tools et de Tomcat. L'installation d'Eclipse Web Tools peut se faire de deux faons :

Utilisation du systme de Mise jour d'Eclipse. Aprs avoir install Eclipse , il est possible d'utiliser le gestionnaire des mises jour pour tlcharger Eclipse Web Tools et ses pr requis. Tlchargement et installation d'un fichier contenant Eclipse, et tous les pr requis pour JEE. C'est la solution que nous utiliserons.

Installation d'Eclipse

Page 1 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Pour pouvoir faire fonctionner Eclipse, il est ncessaire d'installer un JDK ou un JRE. L'tape suivante consiste tlcharger une version d' Eclipse et tous les fichiers ncessaires au fonctionnement . Voici le lien pour tlcharger Eclipse Web Tools 3.5.1 pour Windows :

Tlcharger Eclipse 3.5.1 JEE pour Windows

Une

fois

le

tlchargement

effectu,

l'installation

consiste

simplement

dcompresser le fichier. L'excution se fera ensuite en lanant le fichier eclipse.exe.

Association d'Eclipse avec une installation de Tomcat


Un point fort c'est de pouvoir piloter les principaux serveurs d'applications. Une tape de base dans l'utilisation de WTP est de dclarer l'emplacement d'installation des serveurs d'applications que WTP devra grer. Cette dclaration se fait dans les prfrences d'Eclipse : Prfrences->Server->Installed Runtimes.

Page 2 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Le bouton 'Add...' affiche la liste des types de serveurs supports. Dans le cadre de notre cours nous utiliserons Tomcat 6.0.24 (pour installer Tomcat tlcharger le fichier apache-tomcat-6.0.24.exe et l'installer)

Selon le type de serveur slectionn diverses informations sont demandes, dans le cas de Tomcat seul le rpertoire d'installation doit tre indiqu :

Page 3 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Pilotage des serveurs


Eclipse propose une vue spcifique, nomme 'Server' pour piloter les serveurs d'applications. Cette vue est prsente dans la perspective Java EE . Il est naturellement possible de faire afficher cette vue 'Server' dans une autre perspective via le menu Windows->Open Perspective->Other..., puis Server->Servers.

Page 4 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Dans cette vue il faut dclarer les serveurs qui seront pilots, pour ce faire utiliser le menu contextuel :

Pour l'ajout d'un serveur, l'information importante est le nom de l'installation de serveur utiliser (tel que dclar prcdemment dans les prfrences) :

La vue 'Servers' permet ensuite de piloter les serveurs dclars, il est notamment possible de les dmarrer en mode excution ou dbogage :

Page 5 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Pour paramtrer un serveur, il suffit de faire un clic droit dans le vue Servers , slectionnez le menu New->Server , on obtient le panneau dj connu ci dessous.

Suivre la procdure dj dcrite ci prcdemment sur le paramtrage des prfrences serveur.

Page 6 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Dveloppement d'une application Web


Cration d'un projet Web
Eclipse propose un type de projet particulier pour les applications Web : 'projet Web dynamique'. Ce type de projet est la base un projet Java enrichi de diverses fonctionnalits : un chemin de compilation initialis pour avoir accs aux APIs JEE, une structure conforme au format WAR et des proprits supplmentaires. L'ouverture de l'assistant de cration de projet Web dynamique peut se faire partir du menu contextuel de la vue 'Explorateur de projet' dans la perspective Java EE :

La premire page de l'assistant demande plusieurs informations, les plus importantes sont : 1 - Le nom du projet. 2 - L'environnement d'excution cible : il s'agit du serveur auquel sera associ ce projet, cette information permet Eclipse d'ajouter les fichiers JAR ncessaires dans le chemin de compilation du projet. 3 - Appartenance un EAR : le projet Web dynamique correspond un WAR, lors du dploiement la spcification J2EE prvoit qu'un WAR puisse tre stock dans un fichier EAR. Eclipse propose un type de projet particulier pour les EAR : projet d'applications d'entreprise. L'association d'un WAR avec un EAR est facultative. Dans le cadre de ce cours nous ciblons Tomcat qui ne supporte pas le format EAR donc la cration d'un projet d'application d'entreprise n'est pas demand.

Page 7 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

La seconde page de l'assistant permet d'ajouter des ensemble de fonctionnalits au projet, ces ensembles sont appels 'project facets' en anglais. La liste des 'facettes' est extensible, elle dpend des plugins complmentaires qui sont installs.

La troisime page de l'assistant permet de renseigner deux informations importantes :

Page 8 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

1 - Le nom de contexte : conformment la spcification JEE, chaque application son propre nom de contexte qui apparat dans les URL permettant d'accder l'application. Par dfaut, Eclipse propose le mme nom que le projet.

2 - Le nom du 'rpertoire de contenu' : cette information est propre Eclipse. Un projet Web Dynamique n'a pas directement la structure d'un WAR. La structure du WAR se trouve dans un sous-rpertoire du projet, c'est le nom de ce sous-rpertoire que ce champ permet de modifier (La valeur par dfaut est 'WebContent'. L'intrt de cette approche est de pouvoir stocker dans le projet des fichiers qui ne seront pas visibles par le serveur de test et qui ne seront pas exports lors de la cration du fichier WAR correspondant au projet. Par exemple, le code source n'est pas stock dans le WAR il se trouve dans un sous-rpertoire du projet nomm, par dfaut, 'src'.

Dveloppement d'un servlet


La cration d'un servlet est possible en utilisant l'assistant de cration de classe, mais pour simplifier les choses Eclipse propose un assistant spcifique. L'ouverture de cet assistant peut se faire partir du menu contextuel associ au projet Web, dans ce menu choisir 'New->Servlet'

Dans la premire page de l'assistant, les informations importantes sont le nom de package et le nom de classe du servlet :

Page 9 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

La seconde page de l'assistant permet de saisir des informations qui seront utilises pour dclarer le servlet dans le descripteur de dploiement de l'application (fichier web.xml). La plus importante de ces informations et la liste des alias (champ 'Mappage d'URL'). Ces alias apparatront dans les URL permettant d'accder au servlet (la forme de ces URLs sera http://nomDeServeur:port/nomDeContexte/Alias). Un servlet peut avoir plusieurs alias, par dfaut Eclipse dfinit un alias en utilisant le nom de la classe du servlet.

Page 10 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

La dernire page de l'assistant permet de slectionner les mthodes qui devront tre gnres lors de la cration de la classe du servlet :

Page 11 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Aprs avoir cliqu sur 'Terminer', l'assistant cre la classe. Cette nouvelle classe apparat dans la vue 'Explorateur de projet' et est ouverte en dition. Dans la capture suivante nous avons ajout du code dans la mthode doGet :

Outre la cration de la classe du servlet, l'assistant de cration de servlet a mis jour le fichier web.xml. Ce fichier est ditable et son dition est simplifie par le fait que Eclipse propose un diteur pour les fichiers XML (A noter que cet diteur a deux onglets, l'un propose une vue arborescente, l'autre une vue code source) :

Page 12 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Pour tester la servlet, Eclipse propose un moyen rapide de lancer le serveur Tomcat (s'il n'est pas dj dmarr) et d'invoquer la servlet (un navigateur Web sera ouvert dans la zone d'dition et l'URL permettant d'invoquer la servlet sera appele automatiquement). Cette action se fait partir du menu contextuel associ la classe de la servlet, dans ce menu choisir 'Run AS->Run on Server'. Le serveur peut aussi tre lanc en mode debug en utilisant 'Debug As->Debug on server'.

Page 13 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Lors de la premire utilisation de cette opration une bote de dialogue permet d'indiquer le serveur sur lequel l'excution doit se faire :

Page 14 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Eclipse ouvre ensuite un navigateur Web dans la zone d'dition et invoque le servlet. Pour notre exemple, nous avons modifi l'URL dclenche automatiquement par Eclipse pour ajouter le paramtre attendu par notre servlet :

(NB: la navigateur Web utilis pour afficher le contenu est en fait Internet Explorer sur Windows. Via les prfrences il est possible de demander Eclipse de lancer un navigateur l'extrieur d'Eclipse. Le navigateur utiliser peut aussi tre indiqu via le menu 'Windows->Web Navigator'.

Page 15 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Dveloppement d'une JSP


Pour le dveloppement des JSP, Eclipse propose trois principaux outils : un assistant de cration, un diteur de code source et un dbogueur. L'ouverture de l'assistant de cration de JSP peut se faire partir du menu contextuel associ au projet Web, dans ce menu choisir 'New->JSP'. La premire page de l'assistant permet d'indiquer le nom du fichier et son emplacement (par dfaut la page est place la racine du rpertoire WebContent) :

La deuxime page de l'assistant permet de choisir un modle de page utiliser lors de la cration du fichier. A noter que la liste des modles est extensible :

Page 16 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Une fois cre la page est ouverte en dition. L'diteur de JSP reprend les principales fonctionnalits de l'diteur de code Java que sont : la coloration syntaxique, l'assistance la saisie ('compltion' dclenche par Ctrl+espace), le formatage et l'affichage de la structure du fichier dans la vue 'Outline'. Les particularits des JSP sont prises en compte, soit d'une part le support des tags propres aux JSP et des taglibs, et d'autre part les facilits ncessaires pour dvelopper le code Java intgr dans la page JSP. Le niveau d'aide l'criture de code Java se rapproche de celui offert par l'diteur Java standard d'Eclipse avec notamment le support de la compltion (avec notamment l'ajout des directives d'import) et la validation pendant la saisie.

Page 17 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Pour excuter la JSP, il est possible de procder de la mme faon que pour le servlet (menu contextuel, choix 'Run As' ou 'Debug As'. (NB : l'url gnre est parfois fausse pour les JSP). Eclipse simplifie la mise au point des JSP grce son dbogueur de JSP. Dans une page JSP, des points d'arrts peuvent tre positionns au niveau des lignes contenant des tags JSP. Si le serveur a bien t lanc en mode debug, le dbogueur s'affichera. Le dbogueur de JSP fonctionne de la mme faon que le dbogueur de code Java.

Page 18 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Notion de projet dpendant


Il est courant que lors du dveloppement le code d'une application soit rparti dans plusieurs projets. Un besoin classique est que le code Java contenu dans un projet Java soit utilisable par une application Web dfinie dans son propre projet. Eclipse permet de dfinir une telle dpendance entre un projet Web et un projet Java.

Page 19 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

Cette dfinition se fait partir des proprits du projet Web, dans la section 'Dpendances de module Java EE'. Un projet Java coch dans la liste sera vu par l'application Web comme tant un fichier jar dans le rpertoire WebContent/WEBINF/lib.

Exporter l'application
WTP permet d'exporter simplement un 'projet Web dynamique' sous forme d'un fichier WAR partir du menu contextuel du projet :

Page 20 sur 21

Tomcat & Eclipse, dveloppement dapplication Java EE

La seule information importante est l'emplacement du fichier WAR :

Page 21 sur 21

Vous aimerez peut-être aussi