Bonjour ,
j'ai un petit soucis de mise en place pour un formulaire en struts.
J'ai un formulaire auquel je passe une liste d'objets, que l'on affiche sous forme de textBox, l'utilisateur peut ainsi modifier autant d'élément qu'il le souhaite dans la liste, puis soumettre une fois et sauvegarder tous les changements.
Le code de ma classe form :
Le code de mon 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
25
26
27
28
29
30
31
32
33 //Mes imports public class AdministrationVariablesForm extends GenericForm { //----------------------------------------- private static Log log; private static final long serialVersionUID = -1432824142921206960L; private String codeCree; private int idUniteSelect; private String libelleCree; private List<Variable> listeVariables; // stockage des coches en cours private String[] multiCases; private String titre; private List<LabelValueBean> uniteDispo; //----------------------------------------- /** * Constructeur */ public AdministrationVariablesForm() { super(); log = LogFactory.getLog(AbstractGenericDAO.class); codeCree = null; idUniteSelect = 0; libelleCree = null; listeVariables = new ArrayList<Variable>(); titre = null; uniteDispo = new ArrayList<LabelValueBean>(); } //Mes getters et setters }
Alors j'explique ça plus brièvement :
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85 //Mes imports public class AdministrationVariablesAction extends AbstractGenericAction { //----------------------------------------- private static Log log; private String action; private List<String> listeVariableCoche; // La liste des variables private List<Variable> listeVariables; private List<Variable> lv; private IMoteurTarifaireFacade mofacad; // Le tableau des coches private String[] tab; private List<LabelValueBean> uniteDispo; //Liste des variable en retour de modif private List<Variable> listeVariableModif; private Variable variableModif; //----------------------------------------- /* * Constructeur. */ public AdministrationVariablesAction() { super(); log = LogFactory.getLog(AbstractGenericDAO.class); this.mofacad = MoteurTarifaireFacadeImpl.get(); this.action = "defaut"; this.listeVariables = new ArrayList<Variable>(); this.uniteDispo = new ArrayList<LabelValueBean>(); this.listeVariableCoche = new ArrayList<String>(); this.listeVariableModif = new ArrayList<Variable>(); this.variableModif = new Variable(); } /** * Execute une action. */ public ActionForward executeAction(ActionMapping mapping, ActionForm aform, HttpServletRequest request, HttpServletResponse response) throws Exception { // On récupère le contenu de la requête action. this.action = request.getParameter("action"); // Description des divers cas possibles sur la page. if (this.action.equalsIgnoreCase("")) { log.debug("Action = null"); } else if (this.action.equalsIgnoreCase("majListeVariables")) { log.debug("Action = Mise a jour de la liste des variables"); this.majTitre(request, aform); this.majUpdateListeVariable(request, aform); this.majListeUniteDispo(request, aform); this.majListeVariables(request, aform); } return mapping.getInputForward(); } /** * Méthode de récupération des modifications sur la liste des variables. * @param request * @param aform * @throws DAOException */ public void majUpdateListeVariable(HttpServletRequest request, ActionForm aform) throws DAOException { log.debug("Mise à jour des modifications sur la liste de varaibles"); listeVariableModif = ((AdministrationVariablesForm) aform).getListeVariables(); if(listeVariableModif.isEmpty()) { log.debug("Aucune modif detectée"); } else { for (int i = 0; i < listeVariableModif.size(); i++) { variableModif = listeVariableModif.get(i); log.debug("variable modifiée :"+variableModif.getCode()+" et libelle "+variableModif.getLibelle()); } } } }
On passe une liste d'objet contenant des propriétés:
-Un code
-Un libelle
-Une unité
puis cela me génère un tableau avec un logic iterate, mon soucis est sur la récupération des modifications sur ce tableau.
Voila toute idée ou aide est bienvenu.
Partager