IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

ArrayList de LabelValueBean


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de Shivaneth
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 349
    Par défaut ArrayList de LabelValueBean
    Bonjour,
    je cherche à afficher à l'écran le contenu d'une table. Dans ma classe action, je récupère les valeurs de la table en faisant une arraylist de arraylist de LabelValueBean. Je m'explique. En gros, ma structure doit ressembler à ça :

    Arraylist
    .....|
    .....|_ArrayList
    ..............|
    ..............|_LabelValueBean1(nom1,valeur1)
    ..............|_LabelValueBean2(nom2,valeur2)
    .....|_ArrayList
    ..............|
    ..............|_LabelValueBean1(nom1,valeur1)
    ..............|_LabelValueBean2(nom2,valeur2)

    En gros, mon ArrayList principale représente un tableau, chaque ArrayList en dessous est une ligne et chanque LabelValueBean représente une case de cette ligne. Dans ma classe je fais un req.setAttribute("results", results) avec results de type ArrayList<ArrayList<LabelValueBean>>.

    J'aimerais pouvoir afficher ce tableau sur ma jsp. J'ai essayé ceci :
    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
    <table width=95% border=1 cellspacing=0 cellpadding=0>
    <tr>
     <th>Nom</th>
     <th>Prénom</th>
     <th>Adresse e-mail</th>
     <th>Fiche Collaborateur</th>
     <th>Archivage</th>
    </tr>
    <logic:iterate id="item" name="results">
    <tr>
     <td><bean:write name="item" property="nom" filter="false"/></td>
     <td><bean:write name="item" property="prenom" filter="false"/></td>
     <td><bean:write name="item" property="mail" filter="false"/></td>
     <td>...</td>
     <td>...</td>
    </tr>
    </logic:iterate>
    </table>
    Mais ça me retourne comme message :
    [ServletException in:/pages/ACollab.jsp] No getter method for property nom of bean item'
    J'ai une petite idée de pourquoi ça me fait ce message mais j'aimerais savoir ce que je dois modifier pour pouvoir afficher correctement le contenu de ma table.

    Merci d'avance

    Shiv@

  2. #2
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    C'est normal que ça ne fonctionne pas.
    Pour lire une ArrayList de ArrayList, il faut imbriquer un logic:iterate dans un autre.
    Et autre problème, les propriétés d'un LabelValueBean sont value et label.
    Il ne connaît pas les propriétés nom, prenom et mail.
    Je t'avais donné l'exemple du LabelValueBean dans ta précédente discussion parce qu'il est pratique pour afficher une liste déroulante.

    Mais là, tu devrais plutôt constituer une ArrayList de beans Collaborateur.
    Il te faut donc créer une classe Collaborateur avec pour propriétés nom, prenom, mail, ... avec getters et setters correspondants et ensuite constituer la liste de beans en balayant la table.
    Et après, le logic:iterate que tu as codé dans la jsp fonctionnera.

  3. #3
    Membre chevronné Avatar de Shivaneth
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 349
    Par défaut
    Merci, je vais voir comment faire.

    C'est nickel ! Merci !

    J'ai une autre question. Est-ce qu'il y a moyen de faire un else pour le logic:equal ? Parce que il fonctionne correctement mais je voudrais faire un affichage différent dans le cas ou il passe le if et dans l'autre cas.

    En fait non, c'est bon, j'ai trouvé. :grin:

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ArrayList]transformer l'objet récupéré en double...
    Par snoop dans le forum Collection et Stream
    Réponses: 10
    Dernier message: 16/07/2004, 16h16
  2. [info]arrayList ou Vector
    Par schousso dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/05/2004, 15h47
  3. [info]ArrayList
    Par schousso dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 06/05/2004, 11h44
  4. [Fichier] Ajout des lignes de doc dans arraylist
    Par 3adoula dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 29/04/2004, 22h41
  5. [ STRUTS ][ JSP ][ ArrayList] un lien pour trier
    Par LoulouFifi dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 03/02/2004, 17h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo