Enib cours c.a.i. web - séance #5 : td grails

11
Conception d'Applications Interactives : Applications Web et JEE Séance #5 TD Grails

Transcript of Enib cours c.a.i. web - séance #5 : td grails

Page 1: Enib   cours c.a.i. web - séance #5 : td grails

Conception d'Applications Interactives :

Applications Web et JEESéance #5TD Grails

Page 2: Enib   cours c.a.i. web - séance #5 : td grails

Objectif

● Dans les 2 séances précédentes, vous avez travaillé à remplir des trous dans des applications déjà faites ○ Modèle de développement complèxe

● Maintenant c'est à vous de faire l'application○ En partant de zéro

Page 3: Enib   cours c.a.i. web - séance #5 : td grails

Installation de Grails

● Sur votre poste personnel :

○ Pré-requis : Java JDK 6 ou JDK 7○ Moteur Grails : http://www.grails.org/ ○ IDE GGTS (base Eclipse) : http://www.springsource.

org/downloads/sts-ggts

Des clés USB a disposition pour l'install Windows et Linux

Page 4: Enib   cours c.a.i. web - séance #5 : td grails

Installation de Grails● Sur un poste ENIB :

○ Moteur Grails :/home/TP/modules/sujets/CAI/DevWeb/grails

○ IDE GGTS (base Eclipse) : /home/TP/modules/sujets/CAI/DevWeb/ggts

Le moteur Grails et l'IDE s'exécutent depuis leur répertoire d'installation

Page 5: Enib   cours c.a.i. web - séance #5 : td grails

Créer une application grails

● Démarrer le GGTS et créer un nouveau projet Grails : enibieres

Page 6: Enib   cours c.a.i. web - séance #5 : td grails

Créer une application grails● Exécuter l'application avec run-app● Vérifier sur le navigateur http://localhost:

8080/ENIBieres/

Page 7: Enib   cours c.a.i. web - séance #5 : td grails

Création du modèle de données● Créer une Domain Class enibieres.Beer

○ Attributs : id, name, brewery, country, alcohol

○ Traduction en Groovy du POJO du TD Servlet

○ Si votre Domain Class fait plus de 10 lignes, c'est trop !

Page 8: Enib   cours c.a.i. web - séance #5 : td grails

Création du controleur● Créer un Controller enibieres.

BeerController ○ Pour tester rapidement :

■ Dans la méthode index() faire render "Hello ENIB"

Page 9: Enib   cours c.a.i. web - séance #5 : td grails

Créer une bière● Dans BeerController ajouter ce qu'il faut pour

pouvoir ajouter, enlever, modifier et lister des bières○ Si la classe fait plus de 5 lignes, vous faites fausse

route

Page 10: Enib   cours c.a.i. web - séance #5 : td grails

L'alcool est entre 0 et 90 degrées !● Dans BeerController utiliser des constraints

pour ○ Afficher les champs dans le bon ordre (name d'abord)○ N'accepter des champs à vide○ N'accepter des valeurs d'alcohol qu'entre 0 et 90

Page 11: Enib   cours c.a.i. web - séance #5 : td grails

Stock options● Il ne nous manque que gérer le stock● Dans le modèle, ajouter un champ stock