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 :

<html:select> pb affichage liste


Sujet :

Struts 1 Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut <html:select> pb affichage liste
    j'ai une liste "listeNiveauEtude" que je veux afficher dans ma page jsp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <html:select name="SuperForm" property="diplome.niveau">
                                 <html:option value="">Choisissez dans la liste</html:option>
                                 <html:optionsCollection property="listeNiveauEtude"/>
                           </html:select>
    mais j'arrive pas et j'ai l'erreur suivante :
    org.apache.jasper.JasperException: An exception occurred processing JSP page /formulaire_etude.jsp at line 30

    27: <tr>
    28: <th>Niveau *</th>
    29: <td>
    30: <html:select name="SuperForm" property="diplome.niveau">
    31: <html:option value="">Choisissez dans la liste</html:option>
    32: <html:optionsCollection property="listeNiveauEtude"/>
    33: </html:select>




    cause mère

    org.apache.commons.beanutils.NestedNullException: Null property value for 'diplome'

  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
    Dans l'ActionForm, il faut initialiser l'objet diplome :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private Diplome diplome=new Diplome() ;

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    merci pour ta réponse,

    mais je l'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    private Diplome diplome;
     diplome = new Diplome();
    en plus des getter et setter

    merci

  4. #4
    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
    Mais où as-tu mis ce code-là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     diplome = new Diplome();

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    dans le constructeur de SuperForm

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    je comprends rien dans la meme jsp quand je passe le <html:select> en commentaire j'ai pas de pb avec <html:text> suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text name="SuperForm" property="diplome.intitule"  size="15" value=""/>

  7. #7
    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
    Que contient exactement la collection listeNiveauEtude ?

    parce que le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:optionsCollection property="listeNiveauEtude"/>
    ne peut fonctionner qu'avec une collection d'objets de type LabelValueBean ayant pour propriétés value et label.

    Si ce n'est pas le cas, il faut ajouter les attributs value et label dans le tag html:optionsCollection.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    merci

    en fait c'est une liste normale voici un extrait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public List getListeNiveauEtude(){
        	if(listeNiveauEtude==null){
        		listeNiveauEtude = new ArrayList();
        		listeNiveauEtude.add("Secondaire");
        		listeNiveauEtude.add("Bac");
        		listeNiveauEtude.add("Bac+1");
        		listeNiveauEtude.add("Bac+2");
     
        	}
        	return listeNiveauEtude;
        }

  9. #9
    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
    Dans le cas d'une List de String, il faut utiliser le tag html:options :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:options property="listeNiveauEtude"/>

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    merci bcp
    le suis désolé j'ai paf fait attention entre les deux

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    j'ai à nouveau ce pb, en fait pour la premiere utilisation j'ai pas de pb mais apres c'est impossible j'ai tjs ce message d'erreur:
    org.apache.jasper.JasperException: An exception occurred processing JSP page /formulaireCV.jsp at line 40

    37: <td>Niveau: </td>
    38: <%--<td><html:text name="SuperForm" property="cv.degre" size="15" value=""/></td> --%>
    39: <td>
    40: <html:select name="SuperForm" property="cv.degre">
    41: <html:option value="">Choisissez</html:option>
    42: <html:options property="listeNiveauEtude"/>
    43: </html:select>
    ...

    org.apache.commons.beanutils.NestedNullException: Null property value for 'cv'

  12. #12
    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
    As-tu le même résultat en utilisant les tags nested à la place des tags html ?

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 46
    Par défaut
    je te remercie bcp, j'ai essayé avec nested et tjs le meme chose,

    pour le moment je vais utiliser les zonnes de texte parce que j'ai déjà perdu bcp de temps dessus.

    et je vais y revenir si j'aurai le temps

    merci pour ta contribution pour ce forum

  14. #14
    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
    Ce que je trouve bizarre c'est que tu continues à mettre des attributs name dans les tags html:text et html:select.

    Or, les tags html:text et html:select étant obligatoirement dans un tag html:form, tu n'as pas besoin de préciser le nom du form-bean car celui-ci est déjà référencé dans le mapping de l'Action dans le struts-config.xml.

    Sinon, peux-tu montrer le mapping de l'Action et aussi son code ?

    Tu n'as pas codé quelque part dans l'Action un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    request.setAttribute("SuperForm",SuperForm);
    parce que si c'est le cas, il faut l'enlever.

  15. #15
    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
    Si tu as plusieurs actions liées à ce même formulaire, il faut aussi s'assurer que tu as défini le même scope dans le mapping de ces Actions dans le struts-config.xml.

Discussions similaires

  1. [html:select] valeur par défaut avec liste dynamique
    Par CPI_en_mousse dans le forum Struts 1
    Réponses: 3
    Dernier message: 02/07/2007, 15h29
  2. [html:select] Génération d'une liste déroulante
    Par g.greg45 dans le forum Struts 1
    Réponses: 11
    Dernier message: 12/01/2007, 19h05
  3. [HTML] select liste avec decalages des entrees
    Par guy2004 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 19/05/2006, 16h10
  4. [Struts] html:select problème dans l'affichage
    Par n00noors dans le forum Struts 1
    Réponses: 17
    Dernier message: 16/05/2006, 11h54

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