Passer un formulaire d'une action à une autre
Bonjour,
Je ne sais pas si c'est possible, en tout cas, je n'y arrive pas... ;-)
J'aimerai passer les données d'un formulaire mises à jour dans une action, dans une autre action... et récupérer dans cette action les données de ce formulaire.
Voici un peu de code.
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 25 26
| public class MonForm extends ActionForm {
private String id;
}
public class MonAction1 extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = mapping.findForward("success");
MonForm f = (MonForm) form;
f.setId("toto");
return forward;
}
}
public class MonAction2 extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = mapping.findForward("success");
MonForm f = (MonForm) form;
System.out.println(f.getId()); // je récupère "" et non "toto"
return forward;
}
} |
Dans le fichier struts-config.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <struts-config>
<!-- Beans de formulaire -->
<form-beans>
<form-bean name="MonForm" type="xxx.MonForm">
</form-bean>
</form-beans>
<!-- Actions -->
<action name="MonForm" path="/action1" scope="request" type="xxx.MonAction1">
<forward name="success" path="/action2" />
</action>
<action name="MonForm" path="/action2" scope="request" type="xxx.MonAction2">
<forward name="success" path="/jsp/form.jsp" />
</action>
</struts-config> |
J'aimerai garder cette structure d'une action qui appelle l'action....
J'ai essayé avec le scope session, ça ne change rien...
Avez-vous des idées?
Cordialement
Matthieu