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 :

[STRUTS/TAGS/COLLECTIONS] affichage d une liste


Sujet :

Struts 1 Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut [STRUTS/TAGS/COLLECTIONS] affichage d une liste
    Bonjour,

    Je realise une page jsp qui permet d afficher une liste des societes connues par ma base de donnees.
    J ai pour cela realise des struts qui permettent de la recuperer et ensuite la stocker sous forme de Collection dans une variable de session pour ensuite l afficher dans ma page jsp.

    je sais que vous afficher cette liste sous forme de liste deroulante je fais comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:select name="societeForm" property="societe">
            <html:options collection="societes" property="id" labelProperty="description"/>
        </html:select>

    Mais comment est ce que je code si je ne veux juste qu un listing sous forme de tableau?

    Merci d avance!!

  2. #2
    Membre éclairé Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Points : 861
    Points
    861
    Par défaut
    tu fais un logic:iterate sur ta collection, tu affiches les cellules d'une table dans le iterate
    Ignorer c'est aussi croire que l'on sait.
    Merci d'essayer d'écrire correctement.
    Pas de questions techniques par MP SVP.

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    Merci d avoire repondu aussi vite.

    J ai donc fait ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     <logic:iterate collection="societes" property="id" id="societe"> 
        <tr><td><bean:write name="societe" property="nom"/></td></tr>
        </logic:iterate>
    mais j obtiens cette erreur:
    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
    javax.servlet.ServletException: Cannot create iterator for this collection
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    	org.apache.jsp.societeForm_jsp._jspService(societeForm_jsp.java:160)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
    	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
    	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1480)
    	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:506)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    pourquoi est ce que je ne peux pas faire une itreation sur ma variable societes de session??

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    inclus ton code dans un logic:notEmpty pour eviter d avoir a iterer sur une liste null

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    Je ne comprends pas. J ai pourtant rempli ma liste a la main, donc aucune chance q cette liste soit vide. J ai quand meme mis les tag que tu m avais dit Benjamin, ce qui donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <logic:notEmpty>
        <logic:iterate collection="societes" property="id" id="societe"> 
        <tr><td><bean:write name="societe" property="nom"/></td></tr>
        </logic:iterate>
    </logic:notEmpty>
    mais la, il me sort comme erreur:
    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
    javax.servlet.ServletException: No name attribute was specified
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    	org.apache.jsp.societeForm_jsp._jspService(societeForm_jsp.java:165)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
    	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
    	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1480)
    	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:506)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    pourtant, je n ai nullepart fait appel a un attribut "name" qui d ailleurs n existe dans aucun de mes fichiers!

    ps: kelle est la difference entre les fichiers struts-logic.tld et struts-logic-el.tld?

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    quand je te disais de mettre un logic:notEmpty c t un raccourci pour ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <logic:notEmpty name="societes"> 
        <logic:iterate collection="societes" property="id" id="societe">
    </logic:notEmpty>

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  7. #7
    Membre éclairé Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Points : 861
    Points
    861
    Par défaut
    le logic:notEmpty attend un attribut name, en l'occurence ta collection

    (grillé )
    Ignorer c'est aussi croire que l'on sait.
    Merci d'essayer d'écrire correctement.
    Pas de questions techniques par MP SVP.

  8. #8
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    je crois q je suis trop nul, ca me refait le 1er message d erreur apres avoir mis le nom de ma collection ds le notEmpty...

  9. #9
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    peut tu donner la classe java associee a une societe?

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  10. #10
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    bien sur! la voila:
    SocieteDTO.java
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    package agile;
     
    public class SocieteDTO {
        private String nom;
        private int societeID;
     
     
        /**
         * @return Returns the nom.
         */
        public String getNom() {
            return nom;
        }
        /**
         * @param nom The nom to set.
         */
        public void setNom(String nom) {
            this.nom = nom;
        }
        /**
         * @return Returns the societeID.
         */
        public int getSocieteID() {
            return societeID;
        }
        /**
         * @param societeID The societeID to set.
         */
        public void setSocieteID(int societeID) {
            this.societeID = societeID;
        }
        public static void main(String argv[]){
     
        }
    }

  11. #11
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    supposons que le nom de ton objet session est societes

    tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <logic:iterate name="societes"  id="societe"> 
    <tr><td><bean:write name="societe" property="nom"/></td></tr> 
    </logic:iterate>

  12. #12
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Citation Envoyé par Sniper37
    supposons que le nom de ton objet session est societes

    tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <logic:iterate name="societes"  id="societe"> 
    <tr><td><bean:write name="societe" property="nom"/></td></tr> 
    </logic:iterate>
    Oui avec ca tu ne devrais pas avoir de problemes a afficher la liste de tes societes

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  13. #13
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    est ce que ca ne viendrait aps du fait que ma collection est une variable de session?

  14. #14
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par hinanui
    est ce que ca ne viendrait aps du fait que ma collection est une variable de session?
    Non le fait qu'elle soit en session n'est pas un problème..
    tu as toujours la même erreur?

  15. #15
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    oui tjs cette meme erreur:
    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
    javax.servlet.ServletException: Cannot create iterator for this collection
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    	org.apache.jsp.societeForm_jsp._jspService(societeForm_jsp.java:165)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
    	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
    	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1480)
    	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:506)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    je ne sais pas pourquoi ca me fait ca...

  16. #16
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    quel est le type de l objet qui contient la liste de societes? ArrayList, ...?

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  17. #17
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Qu'est ce que tu mets en session? un objet de type Societe, ou un tableau de Societe..
    Peux tu nous montrer un bout de code pour y voir un peu plus clair !!

  18. #18
    Futur Membre du Club
    Inscrit en
    Février 2004
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 38
    Points : 9
    Points
    9
    Par défaut
    voila le code q met ma collection ds ma variable de session:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SocieteService service = new SocieteService();   
            Collection societes = service.getSocietes();
            HttpSession session = request.getSession();
            session.setAttribute( "societes", societes );
    et ma methode getSocietes():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public Collection getSocietes() {
            ArrayList list = new ArrayList(3);
            list.add( new SocieteBean( 1, "societe 1"));
            list.add( new SocieteBean( 2, "societe 2"));
            list.add( new SocieteBean( 3, "societe 3"));
            return list;
        }

  19. #19
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    A vu d oeil, ceci devrait marcher! c etrange, je seche la...

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  20. #20
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    remontre nous l'erreur que tu as, peut etre ce n'est pas la même que la première!!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/10/2008, 13h17
  2. [Struts] Tester la taille d'une List avec un Tag Logic
    Par yolepro dans le forum Struts 1
    Réponses: 5
    Dernier message: 24/08/2007, 10h28
  3. [struts] afficher page par page une liste d'élément
    Par BurningPat dans le forum Struts 1
    Réponses: 6
    Dernier message: 27/09/2005, 11h09
  4. Pb d'affichage apres une liste déroulante
    Par loic.440 dans le forum ASP
    Réponses: 13
    Dernier message: 19/01/2005, 14h28
  5. Réponses: 8
    Dernier message: 05/05/2004, 16h28

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