Réutilisation &
Composants
Intervenant
2014
Réutilisation &
Composants
Intervenant
: André Morassut
TD – TP
-2015
Réutilisation &
: André Morassut
GMIN30F/MORASSUT
Page 2
Objectifs
- Mise en place d’un projet JAVA J2EE
- Utilisation de MAVEN pour la définition des composants/dépendances à utiliser
- Utilisation de JPA (Hibernate) pour la mise en place d’un schéma de persistance
- Utilisation d’une implémentation « JAX-RS » : Jersey
- Mise en place de « patrons » réutilisables pour traiter les classes de traitement comme des
composants
o Définition d’objets métiers
o Définition des accès aux données
o Définition des services
- Mise en place de tests unitaires
Thème des travaux
Mise en place d’un serveur permettant la gestion de « bookmarks » (favoris) : ajouter, supprimer,
modifier des favoris auxquels nous adjoindront diverses données.
Les favoris sont composés d’un nom obligatoire et d’une description optionnelle définis par
l’utilisateur, données auxquelles s’ajoute l’URL du favori ainsi qu’un compteur de vues.
Chaque favori peut se voir associer une liste, éventuellement vide, de « tags ». Ces tags sont de
simples libellés. Chaque favori garde trace de l’utilisateur qui l’a ajouté.
La mise en place d’une couche REST conduirait à la définition des services suivants :
En lecture :
- GET [server]/bookmark/{id}
- GET [server]/bookmark/{id}/tags
- GET [server]/bookmark/all
- GET [server]/tag/{id}
- GET [server]/tag/all
En écriture :
- POST [server]/bookmark/
- GET [server]/bookmark/tag/
- DELETE [server]/bookmark/{id}
- DELETE [server]/bookmark/tag/{id}
- DELETE [server] /tag/{id}
Cette liste n’est pas exhaustive, nous aurions pu avoir DELETE [server]/bookmarks/all, MOVE
[server]/bookmark/tags/{idbookmarkFrom}/{idbookmarkTo}…
GMIN30F/MORASSUT
Page 3
Étapes de mise en place
- Partie 1 :
o Mise en place de l’environnement de développement
o Mise en place d’un projet MAVEN
o Définir des dépendances
o Configurer une webapplication
o Poser un service « helloworld » JERSEY
- Partie 2 :
o Définition de la persistance JPA
o Mise en place d’objets métier
o Mise en place de DAO & services
o Mise en place de services REST d’interrogation
- Partie 3 :
o Suite mise en place couche REST
o Mise en place de tests unitaires
Outils
- Eclipse IDE
- GlassFish 4.0 (J2EE 7.0 compliant)
- Hibernate 3.x
- Spring 3.x
- JERSEY
- MAVEN2
- Junit3/4
GMIN30F/MORASSUT
Page 4
PARTIE 1
Mise en place de l’environnement & premier service REST
Présentation
Durant cette première partie, nous allons mettre en place le « squelette » du projet et configurer
SPRING comme JERSEY afin de pouvoir déployer des services JAX-RS via un serveur d’application
JAVAEE GlassFish.
JERSEY est une « quality reference implementation » de JAX-RS qui est intégrée à GlassFish selon les
éditions. Cette librairie nous permettra d’exposer un premier service REST.
Adresses utiles :
- Maven : http://maven.apache.org/
- Glassfish : https://glassfish.java.net/
- Jersey : https://jersey.java.net/
- JAX-RS : https://jax-rs-spec.java.net/
Étapes de mise en place
Préparation de l’IDE ECLIPSE
Définir un nouveau workspace
Par le menu des préférences (Windows > Preferences), définir :
o Encoding : UTF-8
o Pointer sur un JDK au niveau de la configuration JAVA
Vérifier la présence d’un plugin maven (Windows > Preferences > Maven)
Mise en place de MAVEN
Copier MAVEN
Le dezipper à un emplacement approprié pour une librairie externe
Modifier « settings.xml », intégrer :
<repository>
<id>codehausSnapshots</id>
<name>Codehaus Snapshots</name>
<releases>
<enabled>false</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
GMIN30F/MORASSUT
Page 5
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
<url>http://snapshots.maven.codehaus.org/maven2</url>
<layout>default</layout>
</repository>
IMPORTANT :
o Pour que MAVEN puisse fonctionner en salle machines (TP), il faut déclarer le proxy
de l’université. Si vous utilisez votre propre machine, ça n’est pas nécessaire.
o Pour déclarer le proxy, ajouter les déclarations suivantes dans les balises
<proxies></proxies> de votre fichier « settings.xml » positionné dans le répertoire
« conf » de votre installation MAVEN :
<proxy>
<protocol>http</protocol>
<host>proxy.info-ufr.univ-montp2.fr</host>
<port>3128</port>
</proxy>
Configurer MAVEN dans ECLIPSE
o Ouvrir le menu des préférences globales : Window > Preferences
o Ajouter une installation MAVEN pointant sur le répertoire où vous avez dézippé les
binaires de MAVEN
Aller dans « Installations » de la section « Maven »
Utiliser le bouton « Add… »
Faire pointer « Global settings from installation directory » sur le fichier
« settings.xml » dans le sous-répertoire « conf » du répertoire où vous avez
copié Maven
Préparation du projet de développement
Définir un nouveau projet
o Menu File > New…
o Choisir « Maven project »
o Dans la fenêtre de configuration, sélectionner « create a simple project » afin de ne
pas avoir l’étape de sélection d’un « archetype »
o Important. Renseigner les informations de classification de projet MAVEN
Group id = fr.tp.[votre nom de famille, simplifié s’il
n’est pas au standard JAVA].rest
Artifact id = RestBookmarkManager
Version : 1.0-SNAPSHOT
Name, Description libres
1 / 14 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !