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 1.1] Petit Lutin qui décoche mes checkbox


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut [Struts 1.1] Petit Lutin qui décoche mes checkbox
    Bonjour à toutes zet à tous !

    Bon Je ne passe jamais par ce forum sans un bon vieux soucis à deux balles et bizaroide.

    Le problème du jour est le suivant :


    J'ai une liste de parcs de clients. J'ai un message d'incident que je veux affecter à un ou plusieurs parcs. Alors pour cela j'associe à chaque parc un flag "coche" qui une fois le formulaire validé je regarde pour voir si on a coché la case.

    Bon je sens que deux personnes ont déjà quitté le sujet, bon regardons le code...

    Au niveau de la JSP voici la liste de parc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <nested:iterate property="listeParc">
    <tr>
       <td align="center"><b><nested:write property="parc" /></b></td>
       <td align="center"><nested:checkbox property="estCoche" value="true" /></td>
    </tr>
    </nested:iterate>
    Au niveau de l'objet parc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    private boolean estCoche = false;
     
    public boolean getEstCoche() {
       return estCoche;
    }
     
    public void setEstCoche(boolean estCoche) {
       this.estCoche = estCoche;
    }
    Au niveau de l'ActionForm :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public void reset(ActionMapping arg0, HttpServletRequest request) {
        Iterator iteListeParc = this.listeParc.iterator();
        while (iteListeParc.hasNext()) {
    	((Parc) iteListeParc.next()).setEstCoche(false);
        }
    }
    Au niveau de mon DispatchAction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    /*** Avant j'ai supprimé touts les parcs liés à l'incident ***/
    Iterator itelisteParc = monForm.getListeParc().iterator();
    while (itelisteParc.hasNext()) {
    	Parc parc = (Parc) itelisteParc.next();
    	if (parc.getEstCoche()) {
    		messMgr.addParcToIncident(parcIncident);
    	}
    }
    Il est à noté qu'au débug, la liste des parcs monForm.getListeParc(), contient déjà un parc décoché par le lutin !

    Le formulaire est de type scope="session"

    Mon problème docteur c'est que quand je coche, par exemple, les 4 premiers parcs de la liste, que je valide, un petit lutin me décoche TOUJOURS la même case.

    ->enregistrement ->

    Les cases décochées par le lutin sont différentes en fonction des cases cochées à l'origine, mais si je coche toujours les même, les mêmes seront toujours décochées.

    Alors avant de me jeter par la fenêtre, je m'en remets à vous.

    Merci !

  2. #2
    Membre éprouvé

    Inscrit en
    Septembre 2005
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2005
    Messages : 99
    Par défaut bug struts 1.1
    Bonjour,

    Il me semble que dans la version que tu utilise il y a un bug avec les checkbox

    As tu regardé les liens suivant ?

    http://struts.apache.org/1.1/faqs/newbie.html

    http://coding.derkeiler.com/Archive/.../msg01037.html

    Cdt, Jérôme

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    Citation Envoyé par ReunionIsland Voir le message
    Bonjour,

    Il me semble que dans la version que tu utilise il y a un bug avec les checkbox

    As tu regardé les liens suivant ?

    http://struts.apache.org/1.1/faqs/newbie.html

    http://coding.derkeiler.com/Archive/.../msg01037.html

    Cdt, Jérôme
    Oui je connais bien le sujet.

    J'ai plusieurs écran checkboxés.

    La solution au problème du checkbox non decoché lors de la sauvegarde est réglé par le reset indiqué dans mon post :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public void reset(ActionMapping arg0, HttpServletRequest request) {
        Iterator iteListeParc = this.listeParc.iterator();
        while (iteListeParc.hasNext()) {
    	((Parc) iteListeParc.next()).setEstCoche(false);
        }
    }
    En fait tu dis que tout est décoché, et struts te renvoi les case ainsi cochées à l'écran. Mais là, non seulement je n'arrive pas à décocher mais en plus certains sont décochées à l'enregistrement.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Décidément, les lutins sont de petits saloupiaux

    Peux-tu montrer le code de la page générée ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    Bon

    Je vais pouvoir cloturer ici

    Malheureusement, je ne vais pouvoir vous expliquer comment j'ai chassé le lutin. Mais en gros, en entête de la page, j'ai une liste déroulante, et j'ai voulu prendre des raccourci en ajouter du code dans le setter de la propriété de la liste qui touchait à la liste de parc.

    Globalement ce qu'il faut comprendre c'est que ça foutais le brin.

    Ca m'apprendra à mettre de l'intelligence dans ActionForm !

    Sinon pour le code généré tout allait bien. J'avais controlé.

    Merci pour le brainstorming !

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

Discussions similaires

  1. probleme de robots ou autre qui "pompe" mes fichiers
    Par silvain dans le forum Serveurs (Apache, IIS,...)
    Réponses: 5
    Dernier message: 24/11/2006, 13h48
  2. recherche écran qui convient à mes yeux
    Par 123quatre dans le forum Périphériques
    Réponses: 2
    Dernier message: 19/09/2006, 19h56
  3. Petit problème qui me prend la tête...
    Par kalash_jako dans le forum Langage
    Réponses: 11
    Dernier message: 19/05/2006, 18h24
  4. Réponses: 2
    Dernier message: 08/05/2006, 20h23
  5. faire un petit menu qui lance des processus
    Par tomsoyer dans le forum Linux
    Réponses: 4
    Dernier message: 30/11/2004, 18h37

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