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 :

Possible de faire html:options sur une liste de String ? [FAQ]


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    SrK
    SrK est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 213
    Par défaut Possible de faire html:options sur une liste de String ?
    Bonjour,

    Je souhaiterais parcourir une collection pour remplir les options d'un select.

    Cependant, j'ai rempli ma liste de String, et donc ce ne sont pas des objets, et il me met "Cannot find bean under name..."
    Est ce que c'est possible de le faire avec une liste de String avec html:optionsCollection ??

    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Par défaut
    T'as bien regardé dans la FAQ ou les tutoriels?
    Quoi qu'il en soit, tu parles d'une liste de String ou d'un tableau de String? A priori, dans les deux cas, ça doit fonctionner... Essaye plutot de savoir si ta liste est bien présente là où tu tentes de l'utiliser (histoire de scope... etc).
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 64
    Par défaut
    Bonsoir,

    est ce que tu peus nous donner un peut de code .
    mais est ce que tu as pensé a utilisé les tag JSTL ?

    Cordialement, abdess6600

  4. #4
    SrK
    SrK est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 213
    Par défaut
    Non, je n'ai encore jamais utilisé les tag JSTL, mais d'habitude j'utilise des collections d'objet et je n'ai pas de problèmes.

    Voici le code qui permet de faire la liste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    		ResultSet rs = GetResultSetforRequest("SELECT fieldtypename from FIELDTYPE where validate='true' ORDER BY fieldtypename");
     
    		ArrayList fieldtypes = new ArrayList();
     
    		rs.beforeFirst();
    		String fieldtype = null;
    		while (rs.next())
    		{ 
    			 fieldtype = rs.getString("FieldTypeName");
    		     fieldtypes.add(fieldtype);
    	    }
    		    rs.close();
     
    		return fieldtypes;
    Peut être est ce que je peux directement bouclé sur le resultSet avec le html:options ???

    Et voici le code dans le jsp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    			<% ArrayList fieldtypes = new ArrayList();
    			fieldtypes = db.getFieldTypesNames();
    			 %>
    			<html:select property="FIELD_TYPE" styleClass="select" >
    				<html:options collection="fieldtypes" property="TYPECHAMP" labelProperty="TYPECHAMP"  /><%-- TCHP_NAME --%>
    			</html:select>
    C'est dans le property et labelproperty que je ne sais quoi mettre en fait, vu que c'est des string

  5. #5
    Membre confirmé Avatar de stela86
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    Le code qui te permet de remplir ta liste il se trouve dans une Action ou dans une ActionForm ?

  6. #6
    Membre Expert
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Par défaut
    N'utilise pas le resultSet dans la JSP, ce n'est pas propre du tout. Si on sépare l'architecture en plusieurs couche, ce n'est pas pour retrouver des elements de connexion dans la couche de présentation ! Si la JSP plante, c'est la merde au niveau des transactions.
    Sinon, tu pourrais nous envoyer le code qui met ta liste en session ou en request stp. De plus, est ce que les noms et id que tu utilises dans ton tag options sont vraiment ceux que tu utilises ou est ce que tu les as modifié pour nous ?

  7. #7
    SrK
    SrK est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 213
    Par défaut
    ok c'est bien ce que je fais, à terme tout cela sera mis en session dans l'action, mais je voulais testé avant de le faire.

    Donc avec mon ArrayList ca marche ?

    Je n'ai rien modifier du code.

    Je vais mettre vite fait la mise en session de la liste dans l'action, je comptais le faire si ca marchais, mais hop je me dépeche

  8. #8
    SrK
    SrK est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 213
    Par défaut
    Dans l'action, mise en session de la liste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ArrayList fieldtypes = new ArrayList();
    	Connexion con = new Connexion();
    	fieldtypes = con.getFieldTypesNames();
            session.setAttribute("FieldTypes",fieldtypes);
    Dans la classe connexion:
    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
    public ArrayList getFieldTypesNames() throws SQLException {
     
     
    		ResultSet rs = GetResultSetforRequest("SELECT fieldtypename from FIELDTYPE where validate='true' ORDER BY fieldtypename");
     
    		ArrayList fieldtypes = new ArrayList();
     
    		rs.beforeFirst();
    		String fieldtype = null;
    		while (rs.next())
    		{ 
    			 fieldtype = rs.getString("FieldTypeName");
    		     fieldtypes.add(fieldtype);
    	    }
    		    rs.close();
     
    		return fieldtypes;
    	}
    Et enfin, dans la JSP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <jsp:useBean  id="fieldtypes" beanName="fieldtypes" type="java.util.ArrayList" scope="session" />
     
    			<html:select property="FIELD_TYPE" styleClass="select" onchange="FIELD_NAME.value=this.value+nbfield">
    				<html:options collection="fieldtypes" property="FieldTypeName" labelProperty="FieldTypeName"  /><%-- TCHP_NAME --%>
    			</html:select>
    Rq: j'ai essayé de faire un <jsp:useBean à la place de:<%
    session.getAttribute...
    pageContext.setAttribute..."
    %>

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/03/2009, 11h07
  2. [HTML] bug sur une liste déroulante
    Par GreatDeveloperOnizuka dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 30/01/2008, 11h58
  3. Réponses: 4
    Dernier message: 24/10/2007, 14h57
  4. Est il possible de faire un cursor sur une procédure stocké ?
    Par berceker united dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/09/2007, 16h47
  5. Selectionnet tous ou faire un clear sur une liste
    Par Canou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/11/2004, 10h26

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