Année Universitaire : 2019-2020
PIDEV GL
UP_WEB
Workshop Exposition Services Web
Objectif
L’objectif de ce workshop est d’exposer un EJB en tant que RESTful.
L’EJB développé sera sous forme de .jar à l’intérieur d’une livraison globale .ear.
La configuration de RESTEasy se fera dans un projet web sous forme de .war à l’intérieur de
la livraison globale .ear.
Module Entreprise (.ear)
Module web (.war) Module EJB (.jar)
Ressource REST Classes Java d’EJB
Organisation
Nous utiliserons Maven pour la création du projet avec l’artifact wildfly-javaee7-webapp-
ear-blank-archetype et le wildfly comme serveur d’application.
1. Créer un nouveau projet Maven et Configurer un nouvel archetype :
File -> New Maven Project -> configure -> Add Remote Catalog.
Ajouter l’URL du catalogue suivant
[Link] au niveau de
« Catalog File » :
2. Choisir l’Artifact wildfly-javaee7-webapp-ear-blank-archetype:
Le projet, dans notre cas appelé PI-GL, sera organisé comme suit :
Module EJB
Dans le module EJB, créez l’entité « User », ayant id(entier) et nom(String), dans un
package nommé « [Link] »
Créez ensuite un nouveau Session Bean « UserBusiness» ayant une interface Local.
Dans l’interface « UserBusinessLocal », déclarez la méthode List<User> getUsers().
Implémentez cette méthode dans la classe « UserBusiness ».
Module Web
Dans le module Web, créez une classe qui étend de [Link] et
qui permettra d’activer vos ressources REST en ajoutant l’annotation
@[Link] tout en indiquant le path de votre RESTFul.
Créez une classe nommée « UserResource» qui va représenter notre ressource REST.
Dans cette classe, on va injecter l’EJB créé précédemment grâce à l’annotation @EJB
Ajoutez l’annotation @[Link] pour permettre au
CDI container d’instancier et gérer l’EJB injecté
Source : [Link]
Build
Rajouter le projet EAR (PI-GL-ear dans notre exemple) sous le serveur Wildfly.
Démarrez votre serveur afin de déployer l’application.
Le déploiement sera effectué sur tous les projets jar, war et ear.
Test