JEE : introduction
Achref El Mouelhi
Docteur de l’université d’Aix-Marseille
Chercheur en programmation par contrainte (IA)
Ingénieur en génie logiciel
[Link]@[Link]
H & H: Research and Training 1 / 24
Plan
1 Introduction
2 Fonctionnement
3 Installation et configuration
JDK
IDE
Serveur HTTP
4 Création d’un premier projet web (avec Eclipse)
5 Structure d’un projet JEE réalisé sous Eclipse
6 Premier Hello world
H & H: Research and Training 2 / 24
Introduction
Jakarta EE
JEE
I ©
1999 : inclus dans Java 2 sous le nom J2EE pour Java 2 Platform
H
Enterprise Edition
UEL
O
f E LM
2006 : renommé depuis Java 5 en JEE pour Java Platform
Enterprise Edition
ch r e
©A
2017 : Oracle confie le projet à Eclipse Foundation qui décide
de le renommer Jakarta EE
H & H: Research and Training 3 / 24
Introduction
Jakarta EE
JEE
I ©
Plateforme facilitant le développement d’applications d’entreprise
H
distribuées
U EL
O
Développée par Sun puis Oracle
f E LM
r e
JEE = JSE + plusieurs autres API
ch
© A
JSE : Java Standard Edition (anciennement J2SE)
API : Application Programming Interface
H & H: Research and Training 4 / 24
Introduction
Jakarta EE
Quelques API de la JSE
H I ©
EL
Swing : une bibliothèque pour les applications de bureau
U
O
LM
JAXP : Java API for XML Processing
r e f E
JDBC : Java DataBase Connectivity
ch
... ©A
H & H: Research and Training 5 / 24
Introduction
Jakarta EE
Quelques composants de la JEE
Servlet : le contrôleur du modèle MVC
H I ©
EL
JSP : Java Server Pages (pour les vues dans le Modèle MVC)
U
O
f E LM
JSTL : Java Standard Tag Library (pour les vues dans le Modèle MVC)
ch r e
JPA : Jakarta Persistence API
©A
EJB : Enterprise Java Beans
...
H & H: Research and Training 6 / 24
Fonctionnement
Jakarta EE
Vue Modèle
(page JSP) (Java Bean)
H I ©
U EL
O
f E LM
ch r e
Requête
©A
HTTP
Contrôleur
(Servlet)
Réponse
HTTP
Client Serveur
H & H: Research and Training 7 / 24
Fonctionnement
Jakarta EE
Déroulement
L’échange entre le client et le serveur s’effectue via le modèle
HTTP (requête - réponse)
H I ©
EL
Lorsque l’utilisateur saisit l’adresse d’une page de notre site, cette
U
O
dernière sera envoyée sous forme de requête HTTP au contrôleur
f E LM
Le contrôleur demande au modèle de lui fournir certaines
données ch r e
©A
Ensuite il renvoie ces données à la vue pour qu’elle construise la
page HTML
Enfin le client reçoit la réponse sous forme de page JSP
H & H: Research and Training 8 / 24
Installation et configuration
Jakarta EE
De quoi on a besoin
H I ©
JDK : Java Development Kit
UEL
O
f E
Développement Intégré) LM
IDE : Integrated Development Environment (Environnement de
ch r e
A
Un serveur HTTP
©
H & H: Research and Training 9 / 24
Installation et configuration JDK
Jakarta EE
JDK 8 : téléchargement
[Link]
JDK 11 : téléchargement
H I ©
UEL
[Link]
O
f E LM
ch r e
©A
JDK 17 : téléchargement
[Link]
JDK 20 : téléchargement
[Link]
H & H: Research and Training 10 / 24
Installation et configuration IDE
Jakarta EE
Environnement de Développement Intégré
Eclipse
Netbeans H I ©
UEL
JDeveloper O
IntelliJ IDEA f E LM
ch r e
JBuilder
©A
JCreator...
...
H & H: Research and Training 11 / 24
Installation et configuration IDE
Jakarta EE
H I ©
EL
Eclipse : téléchargement
O U
LM
[Link]
r e f E
/oomph/epp/2023-09/R/[Link]
ch
©A
H & H: Research and Training 12 / 24
Installation et configuration IDE
Jakarta EE
H I ©
UEL
O
f E LM
ch r e
©A
H & H: Research and Training 13 / 24
Installation et configuration IDE
Jakarta EE
H I ©
UEL
O
f E LM
ch r e
©A
H & H: Research and Training 13 / 24
Installation et configuration IDE
Jakarta EE
Modifier l’encodage par défaut
Aller dans le menu Window et cliquer sur Preferences
H I ©
EL
OU
Dans la zone de recherche, écrire encoding
M
f E L UTF-8 à la place de l’encodage
Pour toutes les sections, mettre
e
chr Cp1252 ou ISO-8859-1)
par défaut (généralement
Ensuite©
A
appliquer et fermer
H & H: Research and Training 14 / 24
Installation et configuration IDE
Java
Quelques raccourcis Eclipse
Ctrl + Shift + : : commenter/décommenter le code
Ctrl + Shift + f : formater le code
H I ©
Ctrl + Alt + ↓ ou Ctrl + Alt +
U EL
↑ : dupliquer la ligne sélectionnée
O
Ctrl + Shift +
f E LM
o : gérer les importer
Ctrl + Alt +
ch r e
l : afficher la liste des raccourcis
Alt + ©A
Shift + R : faire une sélection multiple
Shift + K : aller à l’occurrence suivante
Ctrl + Shift + K : aller à l’occurrence précédente
H & H: Research and Training 15 / 24
Installation et configuration Serveur HTTP
Serveur HTTP
Apache Tomcat
WebLogic Server (Serveur payant d’oracle utilisé par JDeveloper)
JBoss
GlassFish (Open Source de Oracle)
H I ©
...
U EL
O
f E LM
ch r e
©A
H & H: Research and Training 16 / 24
Installation et configuration Serveur HTTP
Serveur HTTP
Apache Tomcat
WebLogic Server (Serveur payant d’oracle utilisé par JDeveloper)
JBoss
GlassFish (Open Source de Oracle)
H I ©
...
U EL
O
f E LM
ch r e
©A
Pourquoi Apache Tomcat ?
gratuit
multi-plateforme
léger
...
H & H: Research and Training 16 / 24
Installation et configuration Serveur HTTP
Jakarta EE
Mise en place d’Apache Tomcat
Pour télécharger, aller sur
[Link]
Aller dans la section Core
H I ©
U EL
Cliquer sur 32-bit/64-bit Windows Service Installer O
f E LM
Attendre la fin du téléchargement puis lancer l’installation
r e
chTomcat à la racine de votre disque dur (C: pour
A
Installer Apache
©et vérifier que le nom du dossier destination ne contient
Windows)
pas d’espace
Décocher la case de la dernière fenêtre d’installation proposant
de démarrer Apache Tomcat
H & H: Research and Training 17 / 24
Création d’un premier projet web (avec Eclipse)
Jakarta EE
Les étapes
Aller dans le menu File > New et cliquer sur Other (ou CTRL + N )
H I ©
Ensuite choisir Dynamic Web Project situé dans le répertoire Web
EL
Saisir cours-jee dans Project name
M OU
f E
Ensuite cliquer sur le bouton New LRuntime, choisir la dernière version
local server ch
r e
d’Apache Tomcat (ici v10.0) et cocher la case juste en-dessous create a new
© A
Cliquer sur Next et préciser le répertoire d’installation de Apache Tomcat
Cliquer sur Finish ensuite deux fois sur Next, puis cocher la case Generate
[Link] deployment descriptor
H & H: Research and Training 18 / 24
Création d’un premier projet web (avec Eclipse)
Jakarta EE
Les étapes
Faire un clic droit sur le projet et choisir Run As ensuite Run on
H I ©
EL
Server
O
Sélectionner le serveur Apache Tomcat et cocher la case U
E
Always use this server when running this project
f LM
r e
chet vérifier que notre projet figure dans la liste
Cliquer sur Next
©
Configured A
Et enfin valider en cliquant sur Finish
H & H: Research and Training 19 / 24
Structure d’un projet JEE réalisé sous Eclipse
Jakarta EE
Structure d’une application JEE
Le nom du projet définit la racine de l’arborescence
La racine contient principalement trois répertoires
H I ©
U EL
O
Java Resources est réservé aux classes Java
M
f E L contenant deux répertoires java et
src contient un dossier main
webapp
c h e
rvers
A
java
©webapp
pointe Java Resources
contient tous les fichiers web
build contient les fichiers compilés (d’extension .class)
H & H: Research and Training 20 / 24
Structure d’un projet JEE réalisé sous Eclipse
Jakarta EE
Contenu de webapp
Les fichiers définis directement dans webapp sont accessibles aux
H I ©
EL
visiteurs (sans avoir besoin de passer par une Servlet). C’est ici qu’on
place les fichiers CSS, JavaScript...
M OU
WEB-INF (inaccessible aux
f E L
visiteurs) a un dossier lib (pour les
c h r e
librairies externes d’extension .jar) et un fichier [Link]
© A consulté par le serveur HTTP).
(premier fichier
META-INF contient les méta-données du projet.
H & H: Research and Training 21 / 24
Premier Hello world
Jakarta EE
Création d’une page HTML
Clic droit sur le projet, aller dans le menu new et choisir HTML
File
H I ©
EL
Placer le fichier directement dans webapp (pas dans WEB-INF)
U
O
LM
Nommer le fichier [Link] et générer la page en cliquant sur
Finish
r e f E
Mettre HelloA h entre les balises <body>
cworld
©
Démarrer le serveur
Aller à l’adresse [Link] ou
[Link]
H & H: Research and Training 22 / 24
Premier Hello world
Jakarta EE
Remarque
En cas d’erreur lors du lancement d’Apache Tomcat
H I ©
Faire double clic sur le serveur
U EL
M O
Aller dans la section Ports etLvérifier que
r e f E
A h
Tomcat admin port
c8080 : 8005
©
HTTP/1.1 :
AJP/1.3 : 8009
H & H: Research and Training 23 / 24
Premier Hello world
Jakarta EE
WEB-INF est inaccessible aux visiteurs
Déplacer [Link] dans WEB-INF H I ©
UEL
Redémarrer le serveur O
f E LM
ch r e
Vérifier que [Link] et
[Link] ne sont
©A
plus accessibles.
H & H: Research and Training 24 / 24