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

Struts 1 Java Discussion :

plusieurs boutons dans une meme form


Sujet :

Struts 1 Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Points : 68
    Points
    68
    Par défaut plusieurs boutons dans une meme form
    Bonjour
    j'ai suivi le fac suivant fac pour réaliser une page avec plusier bouton submit, j'ai codé ca
    formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <html:form action="/confirmationCreatProjectReq">								
    	<html:hidden property="valueButton" value="default"/>
    	<html:submit onclick="setHidden('Creat');">OK</html:submit>
    	<html:submit onclick="setHidden('Cancel');">Cancel</html:submit>
    	</html:form>
    Dans struts-config
    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
     
    <form-beans>
    	<form-bean name="frmConfirmationCreatProjectReq"  type="com.atosorigin.ssc.portal.beans.forms.ConfirmationCreatProjectReqProBean" />
    </form-beans>
    <action
           path="/confirmationCreatProjectReq" 
    	name="frmConfirmationCreatProjectReq" 			    type="com.atosorigin.ssc.portal.actions.ActionConfirmationCreationReq" 
    	parameter="valueButton" 
    	scope="session" 
    	validate="false">
     
    	<forward name="myForwardProjectCreated" path="/jsp/projectReqProCreated.jsp" />
    	<forward name="myForwardError" path="/jsp/creatProjectReqPro.jsp" />
    	<forward name="myForwardCreatProjectReq" path="/jsp/creatProjectReqPro.jsp" />
    </action>
    j'ai bien mon beans du formulaire
    et pour l'ActionForm j'ai ça
    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
     
    package com.atosorigin.ssc.portal.actions;
     
    import java.io.IOException;
     
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import org.apache.log4j.Logger;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.actions.DispatchAction;
     
    /**
     * Action class
     * 
     * @author sgenoux
     *
     */
     
    public class ActionConfirmationCreationReq extends DispatchAction {
     
    private final static Logger logger = Logger.getLogger(MyActionManager.class);
     
    	public ActionForward Creat (final ActionMapping mapping,
    									final ActionForm form,
    									final HttpServletRequest request,
    									final HttpServletResponse response) throws IOException, ServletException {
     
    		ActionForward forward = new ActionForward();
    		forward = mapping.findForward(ActionForwardConstants.FORWARD_ACTION_ProjectReqCreated);
    		return forward;
     
    	}
     
    	public ActionForward Cancel (final ActionMapping mapping,
    			final ActionForm form,
    			final HttpServletRequest request,
    			final HttpServletResponse response) throws IOException, ServletException {
     
    		ActionForward forward = new ActionForward();
    		forward = mapping.findForward(ActionForwardConstants.FORWARD_ACTION_CreatProjectReq);
    		return forward;
     
    	}
     
    }
    La page est affiché correctement mais lorsque je clique sur l'un des bouton j'aurai l'erreur suivant
    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
     
    exception
     
    javax.servlet.ServletException: Action[/confirmationCreatProjectReq] does not contain specified method (check logs)
    	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
     
    cause mère
     
    java.lang.NoSuchMethodException: Action[/confirmationCreatProjectReq] does not contain specified method (check logs)
    	org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:261)
    	org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170)
    	org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
    	org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
    	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
     
    note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.5.20.
    est ce que quelqu'un peut m'aider SVP.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 85
    Points
    85
    Par défaut
    tu peux monter ta function setHidden?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par delph1983 Voir le message
    tu peux monter ta function setHidden?
    bonjour et merci de m'avoir répondre en faite mon champ caché j'ai le appelé valueButton.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <html:hidden property="valueButton" value="default"/>
    et mon setValueButton est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    ....
    private String valueButton = null;
     
    	public String getValueButton() {
    		return valueButton;
    	}
     
    	public void setValueButton(String valueButton) {
    		this.valueButton = valueButton;
    	}
    .....

  4. #4
    Membre confirmé Avatar de supermanu
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    330
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 330
    Points : 452
    Points
    452
    Par défaut
    Dans ta jsp, tu dois avoir le code javascript suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <SCRIPT>
      function setHidden(value){document.formulaire.valueButton.value=value;}
    </SCRIPT>
    Ainsi quand tu cliques sur OK ou Cancel, tu modifie le champs caché et tu passes en paramètre la méthode que tu veux appeler (Creat ou Cancel)

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Points : 68
    Points
    68
    Par défaut
    voila la fonction setHidden de javaScripte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <SCRIPT>
       function setHidden(value){document.formulaire.hidden.value=value;}
    </SCRIPT>

  6. #6
    Membre confirmé Avatar de supermanu
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    330
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 330
    Points : 452
    Points
    452
    Par défaut
    Oui mais ton champs caché s'appelle valueButton
    Donc tu dois changer ta méthode setHidden comme indiqué dans mon précédent post

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Points : 68
    Points
    68
    Par défaut
    Merci pour votre aide, en effet le problème c'était dans la fonction javaScript. je sais pas pour quoi elle ne modifie pas la valeur de mon hidden. Donc j'ai fait autrement peut être ça va aider. dans mon formulaire j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <html:form action="/confirmationCreatProjectReq">								
    	<html:hidden property="hidden" value="cancel"/>
    	<html:submit onclick="this.form.hidden.value='creat';">OK</html:submit>
    	<html:submit   onclick="this.form.hidden.value='cancel';">Cancel</html:submit>
    </html:form>
    donc j'ai supprimer la fonction javascript et je passe les valeurs directement dans la formulaire

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Plusieurs graph dans une meme page
    Par maxtin dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/02/2008, 11h26
  2. [Tableaux] plusieurs champs dans une meme variable
    Par crischprolch dans le forum Langage
    Réponses: 4
    Dernier message: 24/07/2007, 17h18
  3. plusieurs liens dans une meme animation
    Par calipsye dans le forum Flash
    Réponses: 17
    Dernier message: 18/06/2007, 14h18
  4. Comment afficher plusieurs elements dans une meme alert()
    Par monphp dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/05/2007, 22h46
  5. [STRUTS] Plusieurs actions dans une meme page
    Par DarkWark dans le forum Struts 1
    Réponses: 22
    Dernier message: 10/01/2006, 16h18

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