Pour illustrer l'ajout de critères de recherche, je vais ajouter une recherche sur order number.
Grails sur IBMi, ajouter des critères de recherche
Sur la page list, j’ai ajouté ceci au-dessus de la table HTML :
<form action= »list »>
Order No:
<input type= »text » name= »orderNumber » />
<input type= »submit » name= »submit »
value= »Search »/>
</form>
Puis j’ai changé ce tag de pagination :
<g:paginate total= »${OrderDetail.count()} » />
en
<g:paginate total= »${count} » params= »${params} »/>
Le tag de pagination original utilisait la méthode de domaine autogénérée appelée count() pour extraire le nombre d’enregistrements du fichier. Mais maintenant que le comptage d’enregistrements tient compte des critères de recherche entrés, il me faut passer une variable count à la vue. Pour ajouter la fonction de recherche, j’ai changé l’action list dans mon OrderDetailController, comme le montre la figure 10.
Notez comment je vérifie si le critère de recherche a été passé (params.orderNumber), puis utilise les méthodes du finder dynamique pour obtenir la liste et le comptage. Mais si params.orderNumber n’a pas été passé (ou est vide), j’utilise le code original pour obtenir la liste complète. (En réalité, il n’obtient pas la liste complète parce que la variable params.max limitait à 10 le nombre de lignes extraites).
Développement rapide avec les outils Open Source
Comme toujours, quelle que soit la technologie utilisée, il n’est jamais facile d’accoler un frontal web à un système existant. Les difficultés sont bien connues : anomalies de mise à jour, invocation de l’ancien code, listes de bibliothèques, champs de caractères comblés avec des espaces, valeurs booléennes stockées comme un caractère et dates numériques JJ/MM/AA. Avec Grails, ces problèmes sont facilement résolus. Dans de futurs articles nous verrons comment développer Grails sur WDSc/RDi et comment faire en sorte que vos applications IBM i Grails n’aient pas à souffrir des questions d’âge.
Récapitulons ce que Grails vous a apporté. Vous n’avez pas payé pour un produit commercial ou une solution qui vous lie à un fournisseur. Vous utilisez des outils d’une vaste communauté open source, avec une profusion de livres, de cours, et de séminaires. Vous pouvez développer avec votre IDE favori et déployer le résultat sur tout système sous Java. Et, c’est peut-être le plus important, Grails vous offre le moyen le plus rapide de créer des applications Web performantes, fiables, et faciles à maintenir, qui s’accordent facilement avec l’IBM i.
Téléchargez cette ressource
Construire une infrastructure cloud optimisée pour l’IA avec Microsoft Azure
Les managers IT ont besoin d’une stratégie claire et de solutions concrètes pour préparer leur infrastructure cloud à l'adoption de l'IA, tout en optimisant les coûts, renforçant la sécurité et développant les compétences internes. Découvrez tous les conseils dans ce guide Insight.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Face aux ransomwares, la résilience passe par les sauvegardes immuables
- L’IA, nouveau moteur des entreprises françaises d’ici 2030
- Gouvernance, cybersécurité et agents IA : trois défis clés à relever pour réussir la transition en 2026
- Top 5 des évolutions technologiques impactant la sécurité 2026
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
