Bonjour,
Voici la méthode suivante :
Quand l'action est exécutée, la donnée du formulaire (DynaActionForm) est récupérée (champ "nom" du JSP), le fichier est enregistré et le JSP est de nouveau affiché.
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 public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { try { EnregistrerForm enrForm = (EnregistrerForm) form; String nomSauvegarde = enrForm.getString("nom"); String pathSource = servlet.getServletContext().getRealPath( Global.FILE_BASE); String pathDestination = servlet.getServletContext().getRealPath( System.getProperty("file.separator") + RessourceBase.REP_SAUVEGARDE + System.getProperty("file.separator") + nomSauvegarde + RessourceBase.EXTENTION_BASE); File source = new File(pathSource); File destination = new File(pathDestination); Fonctions.copieFichier(source, destination); setMessageActionRealisee(request); form.reset(mapping, request); return (new ActionForward(mapping.getInput())); } catch (Exception e) { setErreurGlobale(request, e); return (mapping.findForward("erreur")); } }
Mais dans ce formulaire le "nom" n'est pas effacé, la saisie précédente de l'utilisateur reste affichée.
La commande :
... n'y fait rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 form.reset(mapping, request);
Comment faire cela ?
Merci encore.![]()
Partager