Bonjour,
Je suis sous Struts, et je viens de faire un formulaire qui m'affiche une liste de personnes dans un select, et qui après validation m'affiche une vue en fonction de la personne selectionnée.
Ce que j'aimerai c'est réutiliser ce formulaire de choix de personne, mais le faire aller sur une autre vue.
je voudrais avoir ce menu :
Voici la definition de l'action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <html:link action="accueil">Accueil</html:link> |<html:link action="choixAgent">Gestion arrêts</html:link> | html:link action="choixAgent">Base du personnel</html:link>
l'Action en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <action input="/choixAgentForm.jsp" name="ChoixAgentForm" path="/choixAgent" scope="session" type="com.myapp.struts.Action.ChoixAgentAction"> <forward name="afficheListeAgents" path="site.choixAgentForm.page"/> <forward name="afficheListeArrets" path="site.listeArretsAgent.page"/> </action>
Je voudrais donc pouvoir placer un paramètre à mes link situés dans le menu, afin que dans la classe Action ci-dessus, je puisse savoir de quel lien vien l'appel, et agir en fonction.
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 public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { int id=0; if (request.getParameter("idAgent")!=null) id = Integer.parseInt(request.getParameter("idAgent")); if (id>0){ // récupère la liste des arrets de l'agent choisi et la place en request ListeArrets liste = new ListeArrets(); liste.initListeArretsAgent(id); request.setAttribute("listeArrets",liste); // Récupère le Bean de l'agent et le place en request AgentBean agent = new AgentDAO().getAgentByNo(id); request.setAttribute("agent",agent); return mapping.findForward("afficheListeArrets"); } else{ ChoixAgentForm c=(ChoixAgentForm) form; c.setListeAgents(new AgentMetier().getListePourSelect()); return mapping.findForward("afficheListeAgents"); } }
Ca me permettrai de ne pas avoir à créer une action de plus.
A moins que ce ne soit pas conseillé...
merci d'avance !
Partager