Voici la fonction execute d'une Action qui appel un formulaire de type DynaActionForm :
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
public ActionForward doDefinirFormule(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
    {
        
        DefinirForm formulaire = (DefinirForm) form; // DynaActionForm
        
        String[] tabNom = (String[])formulaire.get("nom");
        Boolean[] tabEditer = (Boolean[])formulaire.get("editer");
        
        for (Integer i = 0; i < tabNom .length; i++)
        {
            System.out.print(tabNom[i] + " - ");
            System.out.println(tabEditer[i] == new Boolean(true));
        }
        
        
        return mapping.getInputForward();
    }
Dans le JSP :
Chaque ligne de saisie contient un input nom et un checkbox editer : donc le tabNom et le tabEditer devraient avoir la même taille.

Mais, quand l'utilisateur ne coche pas un checkbox, la taille de tabEditer ne correspond plus à la taille de tabNom : en fait, la taille de tabEditer est égale au nombre de checkbox cochés.

En fait, je désire que tabNom[1] corresponde à tabEditer[1], que tabNom[x] corresponde à tabEditer[x]... même si (tabEditer[x] == null) lorsque le checkbox n'est pas coché.

Comment faire cela ?

Merci.