Comment faire pour réinitialiser un @ModelAttribute dans Spring MVC, après qu'elle a été traitée dans le contrôleur?

J'ai défini un @ModelAttribute("monmodèle")

@ModelAttribute("mymodel")
MyModel mymodel() {
  MyModel mymodel = new MyModel();
  return mymodel;
 }


@RequestMapping(value = "/save", method = RequestMethod.POST)
public final void save(@ModelAttribute("mymodel") MyModel mymodel, 
                           final BindingResult binding,
    final HttpServletRequest request, 
    final ModelMap modelMap) throws Exception {
    modelService.save(mymodel);

            //try to reset the model --> doesn't work!!!
    myModel = new MyModel();
}

Le problème est que, même si j'ai du réinitialiser le modèle dans la méthode save, si je recharge la page, après une opération de sauvegarde et enregistrer un deuxième temps, le modèle contient toutes les valeurs de la précédente myModel.

Comment puis-je réinitialiser après qu'elle a été traitée?

Je n'ai jamais eu cette expérience, je n'ai eu besoin d'écrire une méthode pour réinitialiser un ModelAttribute. Êtes-vous sûr de ne pas soumettre à nouveau la même demande POST deux fois?
Ils sont tous les deux nommés "monmodèle"! Méthodes avec @ModelAttribute() doit être pour les données de référence. La forme de la sauvegarde des objets devrait être @ModelAttribute() dans un @RequestMapping méthode.

OriginalL'auteur HHWilchevsky | 2011-07-29