5.FreshMinutes.IT – Java & IT

5 minutes pour consolider ses connaissances en Java et dans les Nouvelles Technos.
  • Accueil
  • À propos
  • Contact, Twitter, Tumblr & Buzz

Afficher une liste de beans avec Struts 2

Eric Vialle | Samedi 28 novembre 2009 | 1:09


ListeNous allons voir ici comment afficher une liste (java.util.List) ou tout autre objet implémentant l’interface java.util.Iterator avec le framework Struts 2.1. Notre liste sera une liste de bean respectant la norme JavaBean. Pour cet exemple, nous allons définir dans un premier temps notre bean ItemBean. Puis dans une Action Struts, nous créérons une liste de ItemBean, que nous afficherons dans une page HTML via une JSP.

Dans un premier temps, nous définissons notre ItemBean avec deux champs: nom et prix.

  1. package org.vialle.fivefreshminutesit.iterator;
  2.  
  3. /**
  4. * Java Bean representant un élément avec deux champs: le nom et le prix.
  5. *
  6. * @author Eric Vialle
  7. */
  8. public class ItemBean {
  9.  
  10.     private String  nom;
  11.  
  12.     private double  prix;
  13.  
  14.     /**
  15.      * @param nom
  16.      *            the nom to set
  17.      */
  18.     public void setNom(String nom) {
  19.         this.nom = nom;
  20.     }
  21.  
  22.     /**
  23.      * @return the nom
  24.      */
  25.     public String getNom() {
  26.         return nom;
  27.     }
  28.  
  29.     /**
  30.      * @param prix
  31.      *            the prix to set
  32.      */
  33.     public void setPrix(double prix) {
  34.         this.prix = prix;
  35.     }
  36.  
  37.     /**
  38.      * @return the prix
  39.      */
  40.     public double getPrix() {
  41.         return prix;
  42.     }
  43. }

Puis nous définissons notre action, nous tacherons d’afficher le contenu de itemsList:

  1. package org.vialle.fivefreshminutesit.iterator;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import com.opensymphony.xwork2.ActionSupport;
  7.  
  8. /**
  9. * @author Eric VIALLE
  10. */
  11. public class LoopAction extends ActionSupport {
  12.  
  13.     /** Liste que nous souhaitons afficher dans la JSP. */
  14.     private List    itemsList;
  15.  
  16.     /**
  17.      * @return the itemsList
  18.      */
  19.     public List getItemsList() {
  20.         return itemsList;
  21.     }
  22.  
  23.     /**
  24.      * @param itemsList
  25.      *            the itemsList to set
  26.      */
  27.     public void setItemsList(List itemsList) {
  28.         this.itemsList = itemsList;
  29.     }
  30.  
  31.     /** Point d'entrée standard de notre action Struts. */
  32.     public String execute() {
  33.  
  34.         itemsList = new ArrayList();
  35.  
  36.         // Ajout du premier élément
  37.         ItemBean item1 = new ItemBean();
  38.         item1.setNom("Ordinateur");
  39.         item1.setPrix(799.99);
  40.         itemsList.add(item1);
  41.  
  42.         // Ajout du second élément
  43.         ItemBean item2 = new ItemBean();
  44.         item2.setNom("Voiture");
  45.         item2.setPrix(11990);
  46.         itemsList.add(item2);
  47.  
  48.         // Ajout du troisieme élément
  49.         ItemBean item3 = new ItemBean();
  50.         item3.setNom("Avion");
  51.         item3.setPrix(310000000);
  52.         itemsList.add(item3);
  53.  
  54.         return SUCCESS;
  55.     }
  56. }

Puis nous développons notre JSP: /itemsDisplay.jsp

  1. <%@ taglib prefix="s" uri="/struts-tags" %>
  2. <html>
  3. <body>
  4.     <%-- avec %{itemsList.size} <=> getItemsList().getSize() --%>
  5.     Taille de la liste:<s:property value="%{itemsList.size}"/><br/>
  6.     <%-- On déroule la liste itemsList --%>
  7.     <s:iterator value="itemsList">
  8.         <%-- <s:property value="nom"/> <=> itemBean.getNom() --%>
  9.         <s:property value="nom"/> - <s:property value="prix"/> Euros<br/>
  10.     </s:iterator>
  11. </body>
  12. </html>

Enfin, nous configurons ainsi, notre action dans le fichier struts-config.xml, comme n’importe quelle action:

  1.  
  2. <package name="exampleIterator" namespace="/exampleiterator" extends="struts-default">
  3.         <action name="loop" class="org.vialle.fivefreshminutesit.iterator.LoopAction">
  4.             <result name="success">/itemsDisplay.jsp</result>
  5.         </action>
  6.     </package>

Nous aurons la joie de voir cette page, lors de l’appel via notre navigateur à la page http://localhost:8080/MonApplicationTest/exampleiterator/loop:

  1. <html>
  2. <body>
  3.     Taille de la liste:3<br/>
  4.         Ordinateur - 799.99 Euros<br/>
  5.         Voiture - 11990.0 Euros<br/>
  6.         Avion - 3.1E8 Euros<br/>
  7. </body>
  8. </html>
  9.  


Catégories
Java, Java EE, Tutoriel
Tags
iterator, struts 2, taglibs
Flux rss des commentaires
Flux rss des commentaires
Trackback
Trackback

« Google Chrome OS devrait sortir d’ici un an (et non une semaine) Récupérer l’adresse IP du client avec Struts 2 »

Leave a Reply

Cliquez ici pour annuler la réponse.

Articles récents

  • Push & communications asynchrones sur iOS (iPhone/iPad)
  • Optimiser le temps de chargement pour le web mobile avec iPhone, jQTouch, Struts 2 et Tomcat
  • La philosophie du Domain Driven Design User Group et l’état des lieux * Users Group en Février 2010
  • Introduction au NoSQL (et de Redis) ou le compte rendu du NoSQL User Group Paris de Février 2010
  • Gérer le Cache-Control HTTP dans une application Web Java EE avec Tomcat
  • Compiler son code? “It’s so 2000s” ou un apercu de Play et JRebel
  • Le blog change d’adresse
  • Le Paris JUG a fêté ses 2 ans: compte-rendu

Navigation

  • Actualités Flux pour tous les articles classés dans Actualités
  • Architecture IT Flux pour tous les articles classés dans Architecture IT
  • Base de données Flux pour tous les articles classés dans Base de données
  • Java Flux pour tous les articles classés dans Java
    • Dévelopement Tips Flux pour tous les articles classés dans Dévelopement Tips
    • EDI Flux pour tous les articles classés dans EDI
    • J2ME Flux pour tous les articles classés dans J2ME
    • J2SE Flux pour tous les articles classés dans J2SE
    • Java EE Flux pour tous les articles classés dans Java EE
    • Tutoriel Flux pour tous les articles classés dans Tutoriel
  • Non classé Flux pour tous les articles classés dans Non classé
  • NoSQL Flux pour tous les articles classés dans NoSQL

Promo

Mots Clefs

adobe apache application web Base de données benchmark bugs c# checkstyle dérivation eclipse find bugs findbugs flex framework play google gzip http iPhone jar Java Java User Group java web start JVM microsoft mysql object objet open source optimisation oracle performance plugin pmd polymorphisme qualité recrutement rich internet application serveur silverlight struts struts 2 sun test Tomcat web

WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.

Twitter

  • J'ai testé OnLive Games sur mon Mac en Wifi: vraiment impressionnant que les possibilités du cloud gaming 2011-01-17
  • More updates...

Livres Pour Aller Plus Loin…

Blogoliste

  • Berthou.com
  • Le blog de hugu
  • PHP – Le Blog de Fatiha
  • techno.blog(java4it)
Get Adobe Flash playerPlugin by wpburn.com wordpress themes
rss Flux rss des commentaires valid xhtml 1.1 design by jide powered by Wordpress get firefox