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

Spring Web Java Discussion :

[Spring MVC] Tag form:select options et selection par spring


Sujet :

Spring Web Java

  1. #1
    Invité
    Invité(e)
    Par défaut [Spring MVC] Tag form:select options et selection par spring
    Bonjour,

    Je n'ai pas trouvé de titre pour résumé mon problème, désolé.
    J'ai donc un formulaire html que je veux remplir avec Spring. Dans ce formulaire j'ai une liste d'options pour choisir une nationalité. Je voudrais que les options soient affichées par Spring et que par-rapport au bean 'command' il sélectionne l'option adoque ou rien si l'option est null dans 'command'.

    J'espère m'être fait comprendre..

    Est-il possible de faire cela si oui, comment et de quoi doit disposer mon bean 'command' en plus de public Nationality getNationality(); ?

    Merci

    Edit : Je me rend compte que ma question n'est pas trés claire :
    Il y à les tags select, option et options (Spring reference "13.9.9. The options tag") pour faire ma liste mais ou trouve t'il la liste des valeurs ?
    Si je me réfère à l'exemple du lien vers la référence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <tr>
      <td>Country:</td>
      <td>
        <form:select path="country">
          <form:option value="-" label="--Please Select"/>
          <form:options items="${countryList}" itemValue="code" itemLabel="name"/>
        </form:select>
      </td>
      <td></td>
    </tr>
    d'ou viens 'countryList' , a quel moment le donne t'on à la vue ?

  2. #2
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Points : 6 301
    Points
    6 301
    Par défaut
    Peux tu nous montrer le code existant pour le moment
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  3. #3
    Invité
    Invité(e)
    Par défaut
    Oui :
    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
     
    <%@ include file="../includes/header.inc.jsp" %> <%-- Contient les taglib -->
    <form method="post" action="<c:url value="registrationform.html"/>">
    <table>
      <tr>
        <spring:bind path="studentfolder.student.firstName">
          <td><label for="${status.expression}"> Nom </label></td>
          <td>
            <input type="text" name="${status.expression}" id="${status.expression}" value="<c:out value="${status.value}" />" size="45" /> *
          </td>
          <td colspan="3">&nbsp;</td>
        </spring:bind>
      </tr>
      <tr>
        <td><label>Nationalité </label></td>
        <td>
          <select name="u.nationality">
            <option value="null" selected />
            <option value="de" class="flag de">Allemande</option>
            <option value="be" class="flag be">Belge</option>
            <option value="fr" class="flag fr">Française</option>				
          </select>
        </td>
        <td colspan="3">&nbsp;</td>
      </tr>
    </table>
    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
     
    public class StudentFolder implements Serializable {
      private Student student = null;
     
      public Student getStudent() {
            return student;
      }
     
        public void setStudent(Student student) {
            this.student = student;
        }
     
    ----------------------
    public class Student {
       public static Nationality{Allemande,Belge,Française};
     
       public Nationality getNationality() { .. }
       public void getNationality(Nationality nationality) { .. }
     
    }

  4. #4
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Points : 6 301
    Points
    6 301
    Par défaut
    ${countryList} peut être un attribut fourni dans le ModelAndView dans ton controlleur.

    Montre un peu ton controlleur actuel
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  5. #5
    Invité
    Invité(e)
    Par défaut
    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
    36
    37
    38
     
    public class RegistrationController extends SimpleFormController {
     
        protected final static Logger logger = Logger.getLogger(RegistrationController.class);
     
        private StudentManager manager = null;
     
     
        public void setStudentManager(StudentManager manager) {
            this.manager = manager;
        }
     
        // ~ Protected methods -----------------------------------------------------
     
        @Override
        protected Object formBackingObject(HttpServletRequest request) throws Exception {
            StudentFolder folder = new StudentFolder();
            logger.debug("Form Backing Object " + folder);
            return folder;
        }  
     
        @Override
        protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, 
                Object command, BindException errors) throws Exception {
            StudentFolder folder = (StudentFolder) command;
            logger.debug("onSubmit " + folder + " : " + 
                    folder.getStudent().getFirstName() +
                    ", " + folder.getStudent().getLastName() );
            return showForm(request, response, errors);
        }
     
        @Override
        protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) 
                throws Exception {
            binder.registerCustomEditor(Date.class, null, new DefaultDateEditor());        
        }
     
    }

  6. #6
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Points : 6 301
    Points
    6 301
    Par défaut
    ajoute une methode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    protected Map referencesData(){
     
    Map map = new HashMap();
     
    List countryList = <ta maniere de recuperer la liste des pays>;
     
    map.put("countryList", countryList);
     
     
    }
    Dès lors, tu auras accès à ${countryList}
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  7. #7
    Invité
    Invité(e)
    Par défaut
    Merci beaucoup.

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

Discussions similaires

  1. [FAQ] [jQuery]Comment puis-je obtenir les paramètres de l'option choisie (select option) ?
    Par NoSmoking dans le forum Contributions JavaScript / AJAX
    Réponses: 1
    Dernier message: 18/03/2014, 23h47
  2. [MVC] Iterer sur une Hashmap avec les tag spring mvc options
    Par Ytsaeb dans le forum Spring Web
    Réponses: 0
    Dernier message: 31/01/2012, 14h35
  3. [DisplayTag] Problème de selection multiple checkbox avec spring mvc
    Par nean_j dans le forum Taglibs
    Réponses: 5
    Dernier message: 20/11/2009, 14h33
  4. Spring mvc select
    Par santati dans le forum Spring Web
    Réponses: 1
    Dernier message: 02/03/2009, 13h58
  5. [Spring MVC] Binding <form: ou <spring:bind
    Par Invité dans le forum Spring Web
    Réponses: 2
    Dernier message: 14/12/2007, 14h56

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