TP 2 : Implémentation de REST en
JEE avec JAX-RS
Nous allons créer un service RESTful basé sur JAX-RS (Jakarta RESTful Web Services),
qui est le standard pour développer des API REST en Jakarta EE.
1. Configuration du projet
1.1. Technologies utilisées
• Jakarta EE (Java EE)
• JAX-RS (RESTful API)
• Tomcat ou Wildfly comme serveur d'application
• JSON pour le format des données
1.2. Création du projet
1. Ouvrez Eclipse ou IntelliJ IDEA.
2. Créez un projet Jakarta EE.
3. Ajoutez un serveur d'application (Tomcat, Wildfly, Payara).
4. Ajoutez la dépendance JAX-RS si nécessaire.
2. Ajout des dépendances
Si vous utilisez Maven, ajoutez cette dépendance à votre [Link] :
<dependencies>
<!-- Jakarta EE API (inclut JAX-RS) -->
<dependency>
<groupId>[Link]</groupId>
<artifactId>[Link]-api</artifactId>
<version>10.0.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
3. Création du service REST avec JAX-RS
3.1. Configuration de JAX-RS
Créez une classe [Link] pour configurer JAX-RS :
package [Link];
import [Link];
import [Link];
// Définit le point d'entrée de l'API REST
@ApplicationPath("/api")
public class RestApplication extends Application {
// Pas besoin de méthode, Jakarta EE détecte automatiquement les
ressources JAX-RS
}
3.2. Création d'un Service REST
Créez une classe [Link] pour gérer les requêtes REST :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
// Définition du chemin d'accès au service
@Path("/hello")
public class HelloService {
// Gestion de la requête GET
@GET
@Produces(MediaType.APPLICATION_JSON)
public String sayHello(@QueryParam("nom") String nom) {
if (nom == null || [Link]()) {
nom = "inconnu";
}
return "{ \"message\": \"Bonjour, " + nom + "!\" }";
}
}
4. Déploiement et Test
4.1. Démarrer le serveur
Lancez votre serveur Tomcat, Wildfly ou Payara.
4.2. Tester l'API
Ouvrez un navigateur ou Postman et accédez à l’URL suivante :
[Link]
Réponse JSON :
{ "message": "Bonjour, Ahmed!" }
5. Améliorations possibles
a) Utiliser des objets Java (POJO) au lieu d'une simple chaîne JSON
b) Intégrer une base de données avec JPA (Jakarta Persistence)
c) Sécuriser l'API avec JWT ou OAuth2
6. Conclusion
Nous avons remplacé la Servlet par une API REST JAX-RS en Jakarta EE.
Ce service peut être étendu pour gérer des bases de données, des utilisateurs et d'autres
fonctionnalités.