Bonjour,

Voici la méthode suivante :
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"));
        }
    }
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é.

Mais dans ce formulaire le "nom" n'est pas effacé, la saisie précédente de l'utilisateur reste affichée.

La commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
form.reset(mapping, request);
... n'y fait rien.

Comment faire cela ?

Merci encore.