Installer son environnement de développement : Tomcat - Eclipse - WTP - Flex Builder

Installer un environnement de développement Java / Flex utilisable est très important dans le cadre de développements d’applications plus ou moins avancées. Plus vos projets vont grandir, plus il sera important de disposer d’un environnement intégré et pratique d’utilisation. Ce tutoriel prend part et propose l’installation d’eclipse que l’on ne présente plus, associé à un plugin très utile dans le cadre de développements d’applications Java et Flex : les Web Tools Project (WTP).

Introduction

L’objectif de ce post est de décrire l’installation d’un environnement de développement Java / Flex. Beaucoup d’environnements existent à l’heure actuelle dans le monde Java (on peut par exemple citer IntelliJ ou NetBeans). Cependant, et comme Flex Builder se présente sous la forme d’un plugin eclipse, nous l’avons choisi pour ce tuto.

De quoi j’ai besoin

  • D’un peu de patience
  • Du JDK 1.5 ou 1.4 (1.5.0_12 dans ce tuto)
    Télécharger le JDK 1.5 sur le site de Sun
    Choisissez “JDK 5.0 Update 12″
  • De Tomcat 5.5.X de préférence
    Télécharger Tomcat 5.5
    Téléchargez :

    • Core (zip ou tar.gz)
    • JDK 1.4 Compatability Package pour les utilisateurs du JDK 1.4
    • (Optionnel) Administration Web Application
  • D’eclipse en version 3.2.X (3.2.2 dans ce tuto)
    Page des téléchargements d’eclipseCliquez sur le lien “3.2.2″ puis choisissez l’archive adaptée à votre OS (j’utilise ici Windows XP)
  • De Flex Builder 2 (2.01 dans ce tuto)
    Page d’accueil d’Adobe Flex
  • Des Flex Data Serivces
  • De vos numéros de série pour les applicatifs Flex

Pour ceux qui disposent déjà d’un Tomcat installé : passez tout de suite à Eclipse !

Installation

Le JDK

Si vous disposez déjà du JDK, passez cette section. Petit rappel : le JRE n’est pas le JDK. Le JRE ne permet que d’exécuter du Java (par exemple, lancer eclipse), mais vous ne pouvez pas compiler d’applications avec, seul le JDK le permet.

  • Sous Linux : suivez les instructions données par Sun (’chmod +x’ sur le .bin téléchargé puis exécution du .bin dans le répertoire de votre choix).
  • Sous Windows : lancez l’exécutable et installez le JDK dans le répertoire de votre choix.

J’appelerai ce chemin [JDK].

Tomcat

  • Extrayez l’archive téléchargée dans le répertoire de votre choix (je l’appelerai [TOMCAT])
  • Pour les utilisateurs du JDK 1.4, extrayez le compatibility package

Eclipse

  • Extrayez l’archive d’eclipse dans le répertoire de votre choix (que j’appelerai [ECLIPSE])
  • Créez un raccourci vers l’exécutable d’eclipse que vous utiliserez pour le lancer : cela permettra notamment de paramétrer la taille de la mémoire allouée à la JVM pour permettre à eclipse de ne pas s’étouffer sous les plugins (on va un peu charger la mule).

Dans le raccourci à la fin de la ligne de commande terminant par eclipse.exe (sous Windows), ajoutez les paramètres suivants :

-vmargs -Xmx1024M

Ceci allouera 1024 Mo à la JVM pour eclipse. Notez que ça fait beaucoup, vous pouvez réduire au besoin si vous ne disposez pas de suffisamment de mémoire sur votre machine. J’avais rencontré quelques soucis de mémoire en mettant 512 Mo.

Les plugins

C’est à partir d’ici que ça se gâte (ou que ça devient intéressant selon les points de vues) :

  • Lancez eclipse en utilisant le raccourci créé précédemment et choisissez votre espace de travail que j’appelerai [WORKSPACE]
  • Ouvrez le menu Help > Software updates > Find and install… :

  • Faites “Search new features to install”
  • Dans la fenêtre qui apparaît, cochez “Callisto Discovery Site” :

  • Cliquez sur “Finish”
  • La recherche de plugins commence. Vous devrez choisir votre miroir. La fenêtre de résultats s’affiche. Déployez “Callisto Update Site” et cochez “Web and J2EE Development”. Vous devez aboutir à une fenêtre de ce type (oui, je sais, il y a une erreur, c’est normal) :

  • Cliquez à présent sur le bouton “Select Required”. C’est tout de même formidable la technologie d’aujourd’hui.
  • Faites “Next”
  • Cochez “I accept…”
  • Faites “Next” de nouveau
  • Faites “Finish” (on y arrive…)

C’est parti, eclipse lance le téléchargement des plugins liés au WTP. Vous devrez choisir “Install all” lorsqu’il vous le demandera et redémarrer eclipse (ne faites pas “Apply changes”).

Pour valider que votre installation a bien fonctionné, après redémarrage d’eclipse, passez dans la perspective J2EE en utilisant le bouton “+” en haut à droite de l’écran :

A présent, nous pouvons installer Flex Builder.

Flex Builder

Vous avez dû télécharger un fichier exécutable du style “FLXB_2.0_Win_WWE.exe” pour Windows (je ne connais pas le nom Linux). Lancez cet exécutable et laissez-vous guider dans les étapes d’installation.

Vous devrez notamment :

  • Spécifier le répertoire de stockage des fichiers d’installation
  • Spécifier le type d’installation :
    IMPORTANT : choisissez l’installation en mode Plugin pour un eclipse existant et non la version standalone. Pensez à fermer eclipse avant de lancer l’installation du plugin.
  • Spécifier le répertoire d’installation de votre choix (je l’appelerai [FLEX BUILDER])
  • Spécifier le répertoire de votre installation d’eclipse ([ECLIPSE])
  • Fermer votre navigateur préféré (pensez à bookmarker ce tutoriel =] )
  • Cliquer sur “Réessayer” (ça le fait à tout le monde ce coup-là)

A la fin de l’installation, en lançant eclipse, vous pourrez constater l’apparition de la perspective “Flex Development” et “Flex Debugging” ainsi que les possibilités de configuration de Flex Builder.

Vous êtes prêts à démarrer !

Préparation de l’environnement

Déclarer son Tomcat

Pour profiter pleinement des WTP, il est nécessaire de déclarer votre installation de Tomcat à eclipse afin que vous puissiez l’utiliser pour y publier vos projets web. Pour cela :

  • Passez en perspective J2EE (si vous n’y êtes pas déjà) comme indiqué plus haut ou via le menu “Window” > “Open Perspective…” > “Other…”
  • Vous devez voir apparaître un onglet “Servers” dans la partie basse de l’écran, choisissez-le
  • Faites un clic droit puis “New” > “Server”
  • La fenêtre de création de serveur apparaît vous permettant de déclarer votre installation de Tomcat, choisissez dans “Apache” > “Tomcat 5.5 Server”
  • Faites “Next”
  • Vous devez lui donner un petit nom (le mien, c’est Roger), et surtout, définir son emplacement ([TOMCAT])
  • Faites finish

Votre serveur est déclaré, mais où est sa configuration ?

Vous avez probablement noté la présence d’un pseudo-projet nommé “Servers” : ce projet contient un répertoire portant le nom de votre serveur Tomcat. Ce répetoire contient les fichiers de configuration du serveur.

Vous savez à présent utiliser votre instance de Tomcat dans eclipse. Ajoutons-lui notre premier projet !

Création du projet

Apparte sur les types de projets : dans le cadre d’un développement Java / Flex, il est préférable de commencer par créer le projet web Java pour ensuite ajouter la couche Flex plutôt que l’inverse. L’expérience m’a douloureusement montré qu’il était plus compliqué de faire l’inverse. Aussi, pour toute personne qui souhaiterait porter un projet Flex dans un environnement, recréez un nouveau projet dans lequel vous pourrez incorporer vos sources, cela sera bien plus simple à gérer que tenter une fusion douteuse…

  • Créez un nouveau projet et choisissez dans le répertoire “Web”, un “Dynamic Web Project” (après tout, c’est relativement explicite)
  • Faites “Next”
  • Indiquez le nom de votre projet et son emplacement (nommé [PROJET] dans la suite du tuto), vérifiez que votre serveur est bien positionné dans la zone “Target Runtime”
  • Faites “Next” (pas Finish, c’est important pour la suite)
  • Faites “Next” de nouveau
  • Dans cette dernière fenêtre, vous pouvez configurer le nom du contexte Tomcat utilisé (appelé à terme sous la forme http://localhost:8080/nom_du_contexte), mais également deux autres paramètres :
    • Content directory : il s’agit du répertoire où il est prévu de mettre les ressources web du projet (images, JSP, CSS, etc. …)Indiquez ici ’src/main/webapp
    • Java Source Directory : je traduis pour les anglophobes : Répertoire de sources JavaIndiquez ici ’src/main/java

Ce formalisme est vivement recommandé pour :

  • une meilleure structuration des sources du projet
  • une utilisation future potentielle de Maven 2

Structure du projet

Examinons rapidement la structure du projet :

Le CLASSPATH Java contient les JAR de Tomcat, ceux du JDK et ceux de la webapp (vide pour le moment) Le répertoire “build” contiendra les fichiers Java compilés en .class Le répertoire “src/main/webapp” contient déjà le répertoire WEB-INF initialisé avec un fichier web.xml standard et le répertoire “lib” destiné à recevoir les librairies de votre projet.

A noter que les “dynamic web projects” offrent la particularité d’ajouter automatiquement au CLASSPATH les JAR ajoutés dans WEB-INF/lib : pratique ! Ils permettent également d’ajouter une référence à un autre projet du workspace (exemple un projet générant un JAR)

Ajout du nouveau projet à Tomcat

  • Retournez sur l’onglet “Servers” où vous avez déclaré votre serveur Tomcat.
  • En faisant un clic droit dessus, vous pouvez choisir “Add an remove Projects…”
  • Ce choix ouvre une fenêtre vous présentant votre projet : ajoutez-le et faites “Finish”

A présent, lorsque vous déployez (icône ‘+’) votre serveur, vous pouvez y voir votre projet, indiquant qu’une déclaration a été faite dans la configuration de votre Tomcat. Vous pouvez éventuellement la personnaliser (déclaration de Data Sources notamment) via le server.xml accessible depuis le pseudo-projet “Servers”.

Vous remarquerez qu’un clic droit sur le serveur Tomcat offre une possibilité de “publier” votre projet sur Tomcat. Le plugin WTP gère une synchronisation entre vos sources et la webapp publiée sur Tomcat via ce système.
Pour retrouver les fichiers publiés sur votre disque dur, vous devez vous rendre dans le répertoire ‘.metadata/.plugins/org.eclipse.wst.server.core/tmp0′ situé dans le répertoire de votre workspace

Dans le cas de projets liés (webapp dépendant d’un JAR situé dans le workspace), le JAR est compilé en premier lieu, et la webapp est publié avec ce JAR. Ce processus de publication prend alors tout son sens.

Assez parlé de Tomcat, passons à Flex !

Projet Flex

Votre squelette de projet est pratiquement finalisé, il ne reste plus qu’à le déclarer en tant que projet Flex. Pour cela :

  • Passer en perspective “Flex Development”
  • Créer le répertoire src/main/flex
  • Clic droit sur le projet puis “Flex Project Nature” > “Add Flex Project Nature”
  • Clic droit sur le projet puis “Properties”
  • Dans “Flex Build Path”, indiquer srcmainflex dans le champ “Main source folder”
  • Positionner srcmainwebapp comme “Output folder”
  • Faire OK
  • Déplacer le fichier MXML créé par défaut dans src/main/flex
  • Aller dans l’onglet “Problems” en bas de l’écran”
  • Faire un clic droit sur le message d’erreur “Cannot create HTML wrapper. Right-click here to recreate folder html-template.” et choisir “Recreate HTML Templates”

On constate à présent que src/main/webapp contient le résultat de la compilation Flex.

Flex Data Services

C’est l’ultime étape (et pas la moindre) :

Note importante : les LiveCycle Data Services ne sont pas convenablement pris en compte en terme de compilation par Flex Builder (la compilation n’accepte pas le modèle fourni par Adobe, c’est un comble !) Il faut donc disposer de la version précédente des Flex Data Services.

  • Installer
  • Prendre le WAR d’exemple installé, le renommer en ZIP, et prendre le contenu du WEB-INF/flex afin de l’intégrer à son projet
  • Prendre les définitions du web.xml et les intégrer à celles du projet en cours
  • Intégrer le WEB-INF/lib par défaut de l’exemple dans son propre WEB-INF/lib
  • Ajouter les directives de compilation suivantes :
-services "[PROJET]srcmainwebappWEB-INFflexservices-config.xml" -compiler.context-root=[NOM PROJET]

Oui, c’est sûr que ce n’est pas super simple, mais on n’a à le faire qu’une seule fois sur l’ensemble du projet. Ensuite, on pourra toujours imaginer la création d’un squelette de ce type à personnaliser en fonction du nom du projet.

Maven 2

Je parlerai de maven 2 dans un prochain article. En attendant, vous pouvez vous documenter sur le sujet à l’adresse officielle

Bonne continuation !


Tags: , , , ,

20 Responses to “Installer son environnement de développement : Tomcat - Eclipse - WTP - Flex Builder”

» Suivre le fil de conversation
  1. fabien /
    -->

    Alors ça c’est ce que j’appel un article ! Merci Hervé !

    Pour les gens qui aime bien avoir leurs environnement en français, vous pouvez télécharger les "Language Pack" à cette adresse : download.eclipse.org/ecli…

    Pour Windows : Télécharger et décompresser l’archive « NLpack1-eclipse-SDK-3.2-win32.zip », et copier les contenus de « Features » et « Plugin » dans les mêmes répertoires de Eclipse. Redémarrer et voila !

  2. Patrick /
    -->

    Merci pour le tuto. :) est-ce qu’il y a des conflits possible si j’ai un serveur JRUN deja installe ?

  3. Hervé /
    -->

    Bonjour Patrick,

    A prirori non, dès lors que la configuration des ports des deux serveurs d’application n’est pas incompatible. Il faut penser à éviter le cas classique de JRUN et Tomcat configurés sur le port 8080.

  4. NB /
    -->

    Merci Hervé pour ce maginfique article, c’est exactement ce que je cherchait. Il ne me reste plus qu’à chercher qq exemples pour mieux se mettre dans le bain.
    Merci

  5. crepin /
    -->

    bonjour et merci pour ce tuto précis et simple!

    Pour ma part j’ai comme un petit problème;
    (Os XP, Eclipse 3.2)
    Après plusieurs install imposible de trouver l’onglet "Server", ("Window" > "Open Perspective…" > "Other..)=j’ai une liste sans le choix server!

    Si quelqu’un a une idée? cela me soulagerai vraiment!!lol, merci

  6. fabien /
    -->

    Salut crepin.
    L’onglet "Server" n’est pas un perspective mais une Vue. Tu peux y avoir accès via "Fenêtre > Afficher la vue > Autre … " (le menu en dessous de "Open perspective"), et là tu choisi Server.
    Voila !

  7. Tarik /
    -->

    Bonjour,

    Merci pour toutes ces informations,mais j’ai un petit probleme quand je fait une servlet et je vais la excuter au niveau de ‘1 run on server’,normalment il faut excuter la servlet mais moi je recoi un message d’errreurr qui dit "Several ports (8005, 8080, 8009) required by Tomcat v5.5 Server at localhost (2) are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s)."
    qu’est ce que voue avez dit ??

  8. fab /
    -->

    Tarik > Ton serveur Tomcat ne doit pas être en marche : lorsque Eclipse lance le projet, il "virtualise" un Tomcat. Du coup si ton serveur est déjà lancé, Un conflit dans les ports de connexions apparait. Le serivce Tomcat localhost de ta machine doit être stoppé. Et là tu ne devrais plus avoir de problème ! :)

  9. Hervé /
    -->

    Effectivement, il arrive régulièrement avec les WTP qu’un Tomcat fantôme se promène.
    Dans ce cas, changez les numéros des ports, lancez tomcat, arrêtez-le, remettez vos ports initiaux et relancez.
    Si vraiment, le fantôme persiste, ouvrez le gestionnaire des tâches, faites un clic droit sur l’application Eclipse puis "Aller dans le processus". Vous allez tomber sur un processus javaw.exe. S’il y a un *autre* javaw.exe qui traîne, tuez-le.

    Bon courage !

  10. red1 /
    -->

    c’est tres bien

  11. bluerequin /
    -->

    j’ai un problème avec tomcat il ne veut pas afficher les pages suivantes:

    localhost:8080/examples/s…

    et

    localhost:8080/jsp-exampl…

    et aussi,

    localhost:8080/servlets-e…

    MERCI D’AVANCE

  12. ayurr /
    -->

    salut,
    Merci pour le tuto c’est important.

    Est-ce que le plugin WTP est nécessaire pour la déclaration de tomcat sous eclipse.

    je fais "Window" > "Open Perspective…" > "Other…" mais l’onglet server n’apparait pas. je sais pas d’où vient le problème? Merci de me répondre si vs avez une idée.

  13. tthiouwz /
    -->

    J’ai eu le meme probleme, tu peux telecharger directement Eclipse pour Java EE qui contient de base tout ce qu’il faut pour faire du jee (etonnant non?).

    Eclipse IDE for Java EE Developers
    http://www.eclipse.org/downloads...

    J’espere que ca va t’aider :)

    Sinon j’ai aussi un probleme, j’obtiens une erreur au démarrage de tomcat(IWAB0213E). Je précise qu’aucune autre instance n’est lancée et que mon classpath est bon je pense. Auriez-vous une idée d’ou ca pourrait venir ?

    voici le message d’erreur:
    ATTENTION: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ’source’ to ‘org.eclipse.jst.jee.server:BibliothequeWS’ did not find a matching property.
    12 mars 2008 11:20:06 org.apache.catalina.core.AprLifecycleListener init
    INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre1.6.0_03\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jre1.6.0_03\bin\client;C:\Program Files\Java\jre1.6.0_03\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Java\jdk1.6.0_03\bin
    12 mars 2008 11:20:06 org.apache.coyote.http11.Http11Protocol init
    GRAVE: Erreur à l’initialisation du point de contact

    Merci d’avance

  14. ayurr /
    -->

    Merci bcp pour l’aide. je vais essayer votre proposition.

  15. Hcene /
    -->

    bonjour,
    klkun sait pourquoi mon eclipse ne prend pas en charge le source que j’ai modiifer?! je m’explique:
    au fait je tarvaille sur une appli web un serveur tomcat je developpe et je teste des fois en redemarant le serveur (quand je modifie une classe) des fois non (jsp)
    depuis un moment ke je redemarre le serveur ou pas le code que je modifie ne s’excute pas comme si eclipse reste coicé dans la version precedante le seul moyen est de fermer le projet ou viré le serveur!!
    bien evidement C vraiment vraiment tres lours a faire !!
    klkun a une idée?

  16. houssem /
    -->

    Salut,
    J’utilise les plugins de Spring sous eclipse pour programmer une application orientée aspect. Mais je ne sais pas que choisir dans le "run Dialog" (j’ai déjà utilisé aspectj qui me donne la possibilité de choisir run "AspectJ/Java application").
    Y’a t’il quelqu’un qui veut m’aider.
    Bon, merci en tout cas.

  17. Hervé /
    -->

    Salut les gars,
    Pour info, on aime bien aider et tout ça, mais là ça ressemble un peu trop à un forum Java…
    Merci de vous rendre sur les espaces appropriés pour éviter de surcharger les commentaires du tuto !
    A bon entendeur

  18. Coco /
    -->

    Perso je trouve ça trop hardu comme méthode surtout que le "right click here" s’obstine à ne pas marcher chez moi.
    J ai trouver cette autre méthode, il suffit de changer blazeds par lcds et c’est tout bon :
    corlan.org/2008/06/05/cre…

  19. wespa /
    -->

    salut les gens,
    je sais que hervé n’apprécierait pas mais je me permet kan meme
    je commence avec flex/java et je ne suis pas vrm un pointure en servlet…
    quelqu’un pourrait me passer un petit truc qui m’aiderait à avancer.
    merci

  20. tomasi /
    -->

    http://www.dil.univ-mrs.fr/~mass...


Soit pas timide...

Powered by WP Hashcash