IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Web Java Discussion :

[Spring MVC] Plusieurs actions sur le même formulaire


Sujet :

Spring Web Java

  1. #1
    Membre du Club
    Inscrit en
    Mars 2003
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 78
    Points : 43
    Points
    43
    Par défaut [Spring MVC] Plusieurs actions sur le même formulaire
    Bonjour à tous,

    A l'aide de SPRING MVC est-il possible de créer un formulaire sur lequel plusieurs boutons brancheront sur des actions et donc des controllers différents tout en bénéficiant de la validation du formulaire.

    Pour résumer est-il possible d'allier un MultiactionController avec plusieurs SimpleFormController?
    Merci d'avance pour vos réponses.

  2. #2
    Membre confirmé Avatar de juvamine
    Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2004
    Messages : 414
    Points : 502
    Points
    502
    Par défaut
    Sans utiliser Spring MVC directement,
    je pense à deux solution, soit tu utilises un filtre de servlet (avec la métjode doFilter etc.)

    soit autre chose de plus simple, tu fais une fonction javascript par bouton avec un truc genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function validerBouton1() {
    form1.action="Servlet1";
    form1.submit();
    }
    function validerBouton2() {
    form1.action="Servlet2";
    form1.submit();
    }
    ...

    ton html donnera
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form name="form1" method="POST">
    <!-- tes controles -->
    <input type="button" name="bouton1" onclick="validerBouton1()" />
    <input type="button" name="bouton2" onclick="validerBouton2()" />
     </form>
    J'ai pas testé...

    Amicalement
    juva

  3. #3
    Membre du Club
    Inscrit en
    Mars 2003
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 78
    Points : 43
    Points
    43
    Par défaut
    J'ai trouvé ce post très intéressant sur une implémentation d'un controller MultiActionFormController:http://forum.springframework.org/showthread.php?t=11086&highlight=MultiActionFormController . Je dois dire que j'ai un peu de mal à le mettre en oeuvre.

  4. #4
    Membre régulier Avatar de Rocket
    Profil pro
    Inscrit en
    Février 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 72
    Points : 82
    Points
    82
    Par défaut
    La classe MultiActionController est surement l'une des plus adpatée pour les IHM s un peu compliqués. Mais le problème est que la notion de validation est pas adapté comme pour les simpleFormController.

    Moi j'ai fais pas mal de recherche, et je suis tombé sur un truc assez simple en sous classant la MultiAction :
    attribut :
    private Object commandName = null;
    private Validator validator = null;

    /******************************************************************
    * Début surcharge de méthode
    ******************************************************************/

    protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
    throws Exception {

    commandName = getCommandNameContext(request);

    return super.handleRequestInternal(request, response);
    }

    protected Object newCommandObject(Class clazz) throws Exception {
    return commandName;
    }

    /**
    * Must be implemented by subclass
    * @return the session object key
    */
    protected abstract String getCommandName(Object commandName);



    Et toutes mes classes qui héritent de celle-ci définissent la méthode suivante :
    public Object getCommandNameContext(HttpServletRequest request){
    return (FilialeForm)WebUtils.getSessionAttribute(request,"filialeForm");
    }

    Où je retourne en fait l'objet qui va servir au validator définit dans mon servlet.xml


Discussions similaires

  1. Plusieurs classes sur un même formulaire ?
    Par Odawin dans le forum Spring
    Réponses: 0
    Dernier message: 14/02/2014, 09h47
  2. [Spring MVC] Plusieurs actions pour un seul controleur
    Par reeda dans le forum Spring Web
    Réponses: 1
    Dernier message: 19/01/2009, 18h12
  3. Plusieurs actions sur un même évènement ?
    Par beegees dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/08/2008, 17h35
  4. Suivi de plusieurs plans d'actions sur une même table
    Par Mac_yavel dans le forum Modélisation
    Réponses: 2
    Dernier message: 20/07/2007, 13h44
  5. Réponses: 2
    Dernier message: 18/07/2007, 08h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo