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 :

Remplissage select vide


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    MOA
    Inscrit en
    Décembre 2002
    Messages
    1 228
    Détails du profil
    Informations personnelles :
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : MOA

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 228
    Par défaut Remplissage select vide
    Bonjour,

    Je suis en train de suivre le tuto de Serge Tahé. Je suis en train de faire l'étude de cas mettant en pratique tous les éléments d'un formulaire html.


    Je bloque au niveau des select. Celui ci ne se remplit pas.



    Dans formulaire.jsp, la vue, j'utilise bien <html:optionS qui attends un tableau.
    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
     
            <html:form action="/confirmation">
    ....
    ....
                    <td>Combo</td>
                    <td>
                        <html:select name="dynaFormulaire" property="combo" >
                            <html:options name="dynaFormulaire" property="valeursCombo" />
                         </html:select>
                    </td>
                </tr>
                <tr>
                    <td>Liste à selection unique</td>
                    <td>
                        <html:select name="dynaFormulaire" property="listeSimple" size="3">
                            <html:options name="dynaFormulaire" property="valeursListeSimple" />
                        </html:select>
                    </td>
                </tr>
                <tr>
                    <td>Liste à selection multiple</td>
                    <td>
                        <html:select name="dynaFormulaire" property="listeMultiple" size="5" multiple="true">
                            <html:options name="dynaFormulaire" property="valeursListeMultiple" />
                        </html:select>
                    </td>
    .....
            <html:submit>Envoyer</html:submit>
     
            </html:form>

    La vue est rattaché
    - à l'action "com.myapp.struts.InitFormulaireAction" qui va remplir le combo avant de l'envoyer au navigateur

    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
     
        <form-beans>
            <form-bean name="dynaFormulaire" type="com.myapp.struts.DynaActionForm">
                <form-property name="opt" type="java.lang.String" initial="non"/>
                <form-property name="chk1" type="java.lang.String" />
                <form-property name="chk2" type="java.lang.String" />
                <form-property name="chk3" type="java.lang.String" />
                <form-property name="champSaisie" type="java.lang.String" initial=""/>
                <form-property name="mdp" type="java.lang.String" />
                <form-property name="boiteSaisie" type="java.lang.String" initial=""/>
                <form-property name="combo" type="java.lang.String" />
                <form-property name="listeSimple" type="java.lang.String" />
                <form-property name="listeMultiple" type="java.lang.String[]" />
                <form-property name="secret" type="java.lang.String"  initial="xxx"/>
                <form-property name="valeursCombo"          type="java.lang.String[]" />
                <form-property name="valeursListeSimple"     type="java.lang.String[]" />
                <form-property name="valeursListeMultiple"   type="java.lang.String[]" />
            </form-bean>
        </form-beans>
    ...
    ....
          <action
             path="/init"
             name="dynaFormulaire"
             validate="false"
             scope="session"
             type="com.myapp.struts.InitFormulaireAction" 
          >
                <forward name="afficherFormulaire" path="/vues/formulaire.jsp" />
          </action>


    et l'action :
    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
     
     public class InitFormulaireAction extends org.apache.struts.action.Action {
     
       private final static String SUCCESS = "afficherFormulaire";
        public ActionForward execute(ActionMapping mapping, ActionForm  form,
                HttpServletRequest request, HttpServletResponse response)
                throws Exception {
     
            DynaActionForm formulaire = (DynaActionForm) form;
            //formulaire.set ("valeursCombo", getValeurs (5, "combo"));
            String[] t = {"toto", "titi" };
            formulaire.set ("valeursCombo", t);
            formulaire.set ("valeursListeSimple", getValeurs(7, "simple"));
            formulaire.set ("valeursListeMultiple", getValeurs(10, "multiple"));
            return mapping.findForward(SUCCESS);
     
        }
        private String[] getValeurs (int taille, String label) {
            String [] valeurs = new String[taille];
            for (int i=0;i<taille;i++) {
                valeurs[i] = label + i;
            }
            return valeurs;
        }

    Bref, je bloque. Je m'attendrais à voire toto et titi dans le select valeursCombo. J'ai bien verifier si les noms des champs entre l'action et la vue jsp etaient bien identiques.

    Ou ai je pourrais avoir fauté ?

  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
    D'après ton struts-config.xml, le form-bean dynaFormulaire est de type com.myapp.struts.DynaActionForm et non org.apache.struts.action.DynaActionForm.

    Donc, dans l'Action InitFormulaireAction, as-tu bien importé la DynaActionForm du package com.myapp.struts ?

Discussions similaires

  1. [JFace] TreeViewer : selection "vide"
    Par Mucho dans le forum SWT/JFace
    Réponses: 9
    Dernier message: 30/05/2007, 18h21
  2. [HTML] Problème balise select vide
    Par mijean dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/04/2007, 13h25
  3. Réponses: 2
    Dernier message: 05/04/2007, 08h50
  4. [MySQL] SELECT vide : que renvoie sql ?
    Par Istrella dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/10/2006, 02h47
  5. [Nouveau][VB.NET] Remplissage BDD vide
    Par botanique dans le forum Windows Forms
    Réponses: 2
    Dernier message: 11/09/2005, 21h02

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