[DispatchAction] formulaire avec plusieurs boutons
Bonsoir,
j'ai un formulaire avec deux boutons de type submit. je souhaite configurer ces deux boutons afin que chaque bouton execute une action unique. j'ai suivi l'exemple de la fac, j'obtiens cette erreur.
Code:
1 2
|
Etat HTTP 500 - Action[/action] does not contain method named default |
le code de mon formulaire
Code:
1 2 3 4 5 6 7
|
<html:form action="/action" name="test1" type="test.FormulaireBean">
<html:hidden property="numero" value="2" />
<html:hidden property="hidden" value="default"/>
.....
<html:submit onclick="setHidden('affecter');">Affecter</html:submit>
<html:submit onclick="setHidden('annuler');">Annuler</html:submit> </html:form> |
le code de mon FormulaireBean
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
...
private String numero = null;
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
// champs caché2
private String hidden = null;
public String getHidden() {
return hidden;
}
public void setHidden(String hidden) {
this.hidden = hidden;
}
... |
le code de mon action
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
public ActionForward affecter(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
FormulaireBean formulaire = (FormulaireBean) form;
request.setAttribute("numero", formulaire.getNumero());
....
return mapping.findForward("envoyer");
}
public ActionForward annuler(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
FormulaireBean formulaire = (FormulaireBean) form;
....
return mapping.findForward("envoyer");
} |
le code su struts-config
Code:
1 2 3 4 5 6 7 8 9 10 11
|
<action
path="/action"
name="test1"
scope="request"
validate="false"
type="test.CartAction"
parameter="hidden"
>
<forward name="envoyer" path="/envoyer.do" />
</action> |
le code javascript
Code:
1 2
|
function setHidden(value){document.formulaire.hidden.value=value;} |