Salut tout le monde !
Je découvre Grails depuis deux trois jours, et j'aimerais, lors d'une redirection, passer une liste d'objets en paramètres, ce que je fais via params.
Et pourtant, lorsque je récupère ma liste d'objets dans la page d'après, elle m'apparait en tant que String. Comme j'avais entendu parler avec d'autres frameworks d'une histoire de sérialization, j'ai implémenté l'interface sur la classe sans que ça change quoi que ce soit.
Voici mon code. La closure rechercherProfil effectue une redirection vers le controleur Recherche, qui possède sa propre vue (d'ailleurs la vue marche bien, mais affiche les mauvais résultats, forcément). Et je suis loin d'être sûr de l'efficience de la première ligne de la closure list de RechercheController.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 class ProfilController { def scaffold = Profil; def rechercherProfil = { def results = Profil.findAllByFirstNameOrLastName(params.rechercheNomProfil, params.rechercheNomProfil); println("nombre de résultats : " + results.size()) println("classe de results : " + results.class) results.each{ println it } redirect(controller:"recherche", action:"list", params:["resultsList":results]) } }
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class RechercheController { def index ={} def list = { params.max = Math.min(params.max ? params.int('max') : 10, 100) def resultsInstanceList = params.getAt("resultsList") println("classe de resultsInstanceList : " + resultsInstanceList.class) redirect(controller:"profil", action:list") } }
Au fait, connaissez vous un bon endroit pour la doc groovy ? Je n'ai pas encore trouvé.
Partager