Technologies

Tutoriel : installer Java Petstore (YAPS) sur Eclipse

Publié le : Auteur: vhanniet Laisser un commentaire
technologies

L’application Java Pet Store est un grand classique de l’histoire de Java. Créée initialement par Sun elle permettait d’illustrer la puissance de J2EE pour construire une application typique du buzz de l’époque (on est dans les années 2000) : un site de e-commerce. Microsoft a réalisé une déclinaison .NET pour montrer combien les technologies Microsoft étaient plus performantes. Puis Oracle, déjà, a montré que dans des conditions plus favorables J2EE n’était en rien en reste par rapport  à .NET !

Antonio Gonçalvez, auteur de « Java EE 5 » puis plus récemment de « Java EE6 et GlassFish 3 », a réalisé une version actualisée de Java Pet Store en JEE pour Java 6, comme c’est expliqué ici. Cette version de la Java Pet Store est accessible publiquement sur github.

YAPS a été retenu comme une application de référence pour notre « Bac à sable ». Elle permet de s’entraîner ou de faire des benchmarks simples. L’intérêt d’utiliser toujours la même application est de capitaliser plus rapidement l’expérience entre nous, et de faciliter les comparaisons entre technologies.

Le mini tutoriel ci-dessous permet d’installer, builder et lancer YAPS entièrement sous Eclipse (pas de ligne de commande pour lancer Glassfish ou lancer un build Maven) :

0) Installer un SDK Java SE s’il n’est pas présent et au moins en version 6
– http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html
NB : c’est un bien un Java SE qu’il faut installer et non un Java EE. Maven se chargera de récupérer les librairies nécessaires dans la bonne version

1) Installer Maven 3.0.4 (ou autre version)
– http://maven.apache.org/download.html

2) Installer Eclipse Juno (ou autre version)
– http://www.eclipse.org/downloads/

3) Installer EGit dans Eclipse
– Help > Eclipse Marketplace
– Find « egit »
– Choisir et installer « EGit – Git Team Provider »

4) Installer m2e dans Eclipse
– Help > Eclipse Marketplace
– Find « m2e »
– Choisir et installer « Maven Integration for Eclipse »

5) Installer un serveur Glassfish
– Window > Showview > Servers > New server wizard > Download additional servers adapters
– Choisir et installer « Oracle Glassfish Server Tools »
– Window > Showview > Servers > New server wizard > Glassfish 3.1.2

6) Un problème de port
Dans le fichier …glassfish3glassfishdomainsdomain1config.xml remplacer la valeur « 8080 » par « 8085 » dans la section <network-listeners> pour éviter un conflit d’écoute avec l’antivirus Sodifrance sur le port 8080

7) Importer le projet Petstore
– File > Import > Git > Projects from Git
– Choisir URI. Copier le chemin vers le référentiel github contenant le projet. Pour le fork du projet c’est ici :
https://github.com/JavaTeam/agoncal-application-petstore-ee6.git
– Choisir « Import as general project » (ou équivalent en français si Eclipse est localisé)

8) Transformer le projet en projet Maven
– Click droit sur le nom du projet dans l’explorateur > Configure > Convert to Maven Project
– Dans le pom.xml mettre en commentaire le block contenant <artifactId>jrebel-maven-plugin</artifactId> (ouvrir pom.xml + sélectionner la section plugin concernée + click droit > Source > Add block comment)

9) Ajouter au projet une facette « Dynamic Web »
– Click droit sur le nom du projet dans l’explorateur > Configure > Convert to Faceted forms
– Dans la fenêtre qui s’affiche choisir « Dynamic Web Module »
– Supprimer le dossier « WebContent » généré automatiquement
– Click droit sur le nom du projet dans l’explorateur > Build Path > Configure Build Path > Deployment assembly
– Supprimer le répertoire « WebContent »
– Ajouter Folder > src > main > webapp

10) Toute erreur n’est pas grave !
Il y a des erreurs sur un fichier .xhtml dans les sources : c’est pas grave !

11) Lancer le build
– Click droit sur le nom du projet dans l’explorateur > Run As > Maven Build…
– Dans le champ goal entrer « clean install -Dmaven.test.skip=true » puis cliquer sur Run

12) Lancer le run
– Click droit sur le nom du projet dans l’explorateur > Run As > Run on server
– Choisir le serveur Glassfish (choix par défaut)
– Yahoo ! Un fenêtre web « YAPS Petstore » apparaît : on est dans l’IHM de l’application Petstore !
– C’est plus joli en copiant/collant l’adresse affichée dans cet fenêtre dans ton browser préféré :

Petstore

 

Ce tutoriel n’a pas été très simple à mettre au point, et je remercie Eric (Duport) pour son aide précieuse.
Cependant il est normalement bien rodé maintenant et je peux le dérouler en un quart d’heure en partant d’un environnement vide. Si je peux le faire moi… Tu peux le faire aussi !

Quel intérêt ? Voir facilement en action les technos JEE actuelles : CDIEJB LiteREST interfaceBean Validation, JPA, JAX, JSF, etc.

Si tu rencontres des problèmes, n’hésites par à laisser un commentaire à ce billet ou à utiliser le Forum.