public abstract class ParameterLookupDispatchAction extends UrlPathDispatchAction
unspecified() aangeroepen.
Indien het request was gecancelled (door het indrukken van een
html:cancel knop) wordt cancelled() aangeroepen.
Met deze action kunnen verschillende methodes van een Action class worden aangeroepen door meerdere submit buttons op één form; bijvoorbeeld:
<html:submit property="save">Opslaan</html:submit>
<html:submit property="delete" onclick="bCancel = true;">Verwijderen</html:submit>
Of doormiddel van een submit met JavaScript, bijvoorbeeld:
LET OP: Ten behoeve van het kunnen submitten van een form met
JavaScript met een hidden property maakt deze Action na het dispatchen
indien er een String property in het DynaActionForm aanwezig is met de naam
van parameter van de uitgevoerde methode deze leeg.
<html:hidden property="filterChange"/>
<script language="JavaScript1.1">
<!--
function onFilterChange(event) {
bCancel = true; // geen validation op deze functie
document.forms[0].filterChange.value = "submit";
document.forms[0].submit();
}
// -->
</script>
<html:select property="filter" onchange="onFilterChange();">
...
</html:select>
Bij deze voorbeelden hoort de volgende subclass:
public class ExampleAction extends ParameterLookupDispatchAction {
protected Map getParameterMethodMap() {
Map map = new HashMap();
map.put("save", "mySaveMethod");
map.put("delete", myDeleteMethod");
map.put("filterChange", "myFilterChangeMethod");
return map;
}
public ActionForward mySaveMethod(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
...
}
idem voor myDeleteMethod en myFilterChangeMethod
}
parameterMethodMaptypes| Constructor and Description |
|---|
ParameterLookupDispatchAction() |
| Modifier and Type | Method and Description |
|---|---|
org.apache.struts.action.ActionForward |
execute(org.apache.struts.action.ActionMapping mapping,
org.apache.struts.action.ActionForm form,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
protected String |
getMethodParameter(org.apache.struts.action.ActionMapping mapping,
org.apache.struts.action.ActionForm form,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
getDispatchedMethodName, getDispatchedParameter, getMethodPathIndex, getParameterMethodMap, parseParameter, setDispatchMethodcancelled, getMethod, unspecifieddispatchMethod, getMethodName, getParameteraddErrors, addMessages, execute, generateToken, getDataSource, getDataSource, getErrors, getLocale, getMessages, getResources, getResources, getServlet, isCancelled, isTokenValid, isTokenValid, resetToken, saveErrors, saveErrors, saveErrors, saveMessages, saveMessages, saveToken, setLocale, setServletpublic org.apache.struts.action.ActionForward execute(org.apache.struts.action.ActionMapping mapping,
org.apache.struts.action.ActionForm form,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws Exception
execute in class UrlPathDispatchActionExceptionprotected String getMethodParameter(org.apache.struts.action.ActionMapping mapping, org.apache.struts.action.ActionForm form, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
getMethodParameter in class UrlPathDispatchActionCopyright © 2016. All rights reserved.