Привет. Имеется форма Код | <html:form enctype="multipart/form-data" action="saveAdUsersForm" onsubmit="return validateAdUsersFormCustom(this)"> . . <c:choose> <c:when test="${(empty adUsersForm.id)}"> <jguard:hasPrincipal principals="AdUsers_N"> <html:submit styleClass="button" property="action" onclick="bCancel=false"> <bean:message key="button.save"/> </html:submit> </jguard:hasPrincipal> </c:when> <c:otherwise> <jguard:hasPrincipal principals="AdUsers_E"> <html:submit styleClass="button" property="action" onclick="bCancel=false"> <bean:message key="button.save"/> </html:submit> </jguard:hasPrincipal> </html:form >
|
В етой форме есть несколько сабмит кнопок, которые отправляют запрос на один и тот же екшн. Struts-config.xml -> Код | <action path="/saveAdUsersForm" type="web.action.AdUsersAction" name="adUsersForm" scope="request" input="edit" parameter="action" unknown="false" validate="true" > <forward name="edit" path=".AdUsersForm" redirect="false" /> <forward name="list" path=".AdUsersFormList" redirect="false" /> <forward name="ajax_list" path=".AdUsersFormAjaxList" redirect="false" /> <forward name="list_search" path=".AdUsersFormListSearch" redirect="false" /> </action>
|
Вот шаблон екшена -> Код | public class AdUsersAction extends BaseAction {
private Log log = LogFactory.getLog(AdUsersAction.class); public ActionForward redirectToDetail(ActionMapping mapping, String idValue, String lsId)throws Exception{ ActionForward actionLocal = new ActionForward(); ActionForward action=mapping.findForward("master_det"); String path=action.getPath(); actionLocal.setName(action.getName()); if (lsId==null){ actionLocal.setPath(path+idValue); }else{ actionLocal.setPath(path+idValue+ "&lsid=" + lsId); } actionLocal.setContextRelative(action.getContextRelative()); actionLocal.setRedirect(action.getRedirect()); return actionLocal; }
public ActionForward cancel(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("list"); }
public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
return mapping.findForward("list"); }
public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("edit"); }
public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("list"); } }
|
В екшене есть несколько методов. Вопрос: как знать на который из методов запрос из формы? Наверно глупый вопрос, но сам найти не могу - здоровенный проект.... Это сообщение отредактировал(а) novichok84 - 2.3.2007, 13:53
|