Je ne sais pas pourquoi tu voulais faire cela mais la solution pour toi serait peut-être d'utiliser une MappingDispatchAction à la place de la DispatchAction :
L'Action doit hériter de MappingDispatchAction :
1 2 3 4 5 6 7 8 9 10 11 12 13
| public class MaMappingDispatchAction extends MappingDispatchAction
{
public ActionForward methode1(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception
{
...
return mapping.findForward("success") ;
}
public ActionForward methode2(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception
{
...
return mapping.findForward("success") ;
}
} |
Dans le struts-config.xml, il faut définir autant de mapping que de méthodes de la MappingDispatchAction et mettre dans chaque attribut parameter le nom de chacune des méthodes :
1 2 3 4 5 6 7 8
| <action path="/path1" type="monpackage.MaMappingDispatchAction" name="maValidatorActionForm"
scope="session" validate="true" input="/page1.jsp" parameter="methode1">
<forward name="success" path="/page2.jsp"/>
</action>
<action path="/path2" type="monpackage.MaMappingDispatchAction" name="maValidatorActionForm"
scope="session" validate="true" input="/page2.jsp" parameter="methode2">
<forward name="success" path="/page3.jsp"/>
</action> |
et dans la jsp :
<html:form action="/path1">
Partager