Aller au contenu

Exercice 2 - Création d'un projet Web dynamique⚓︎

Eclipse offre la possibilité de créer plusieurs types de projets Java. Pour pouvoir créer et déployer des Servlets, il faut créer un projet Web dynamique (Dynamic Web Project en anglais).

  1. On commence donc par créer un projet Web dynamique :

    Dans eclipse, on se place dans la vue Project Explorer. Clic droit avec la souris, puis :material-mouse:New > Project. Il faut enfin aller dans :material-file-tree:Web > Dynamic Web Project comme dans la capture d'écran ci-dessous :

    Nouveau projet Web dynamique

  2. Il faut ensuite donner un nom au projet (PremierProjet ici), indiquer l'environnement d'exécution (pour l'instant, il n'y en a qu'un, c'est tomcat9 - :warning: il y en aura bientôt plusieurs, et il faudra faire bien attention !), puis cliquer sur Next > comme sur la capture d'écran ci-dessous :

    Nouveau projet Web dynamique

  3. :warning: :warning: Il faut ensuite cliquer une fois sur Next > à nouveau, mais attention à bien cocher la case Generate web.xml deployment descriptor dans le dernier écran. On peut ensuite cliquer sur Finish.

    Nouveau projet Web dynamique

    Pas de web.xml ?

    Si vous avez oublié de cocher cette case, il faudra soit supprimer ce projet et recommencer à l'étape 1, soit ajouter manuellement le fichier 📄web.xml, en respectant la structure attendue.

Racine de l'application Web

Par défaut, le context root de l'application est le nom du projet, ici PremierProjet.
Cela signifie que pour accéder au contenu de l'application depuis un navigateur Web, une fois qu'elle sera déployée sur un serveur, toutes les URLs seront du type http://localhost:8080/PremierProjet/...

Cela signifie également qu'on peut déployer autant de projet Web que souhaité sur le serveur tomcat, puisqu'ils auront tous un context root différent, et ils auront donc tous une URL pour y accéder différentes.

Arborescence d'un projet Web dynamique

Par défaut, voici l'arborescence d'un projet Web dynamique (on peut la modifier à la création du projet dans eclipse, mais c'est déconseillé) :

PremierProjet/
└── src/
    └── main/
        ├── java/
        │   └── ici, il y a les packages (qui sont des dossiers) et les classes Java.
        └── webapp/ (c'est le contenu Web de l'application)
            ├── META-INF/
            │   └── MANIFEST.MF
            ├── WEB-INF/
            │   └── lib/
            │   └── web.xml
            └── ici, il y a toutes les pages HTML, JSP, CSS, JavaScript ...
                éventuellement dans des sous-dossiers.

Ainsi, l'URL http://localhost:8080/PremierProjet/ pointe vers le dossier 📂webapp.

Si on place par exemple un script 📄style.css dans un sous-dossier 📂css du dossier 📂webapp, on pourra afficher son contenu dans un navigateur en allant à l'URL http://localhost:8080/PremierProjet/css/style.css

Il y a également un dossier 📂build, au même niveau que 📂src, qui va contenir toutes les classes Java compilées (et toutes les ressources).