lundi 23 février 2015

Action mapping triggers wrong method in a controller

I have following problem. I'm trying to handle two different action mapping in a controller. One is trigger when a button is pressed and second when a link is being clicked. Unfortunately both action trigger "buttonAction". I don't know how to force link to trigger "linkAction".


Here is my code:


Jsp:



<portlet:actionURL name="buttonAction" var="buttonActionUrl" ></portlet:actionURL>
<portlet:actionURL name="linkAction" var="linkActionUrl"></portlet:actionURL>

<form:form id="form" modelAttribute="model" method="POST" action="${buttonActionUrl}">
<a id="link" href="#" onclick="linkClick();"></a>
<button id="button" onclick="buttonClick();" type="submit"></button>
</form:form>


Javascript:



function linkClick() {
window.location = '${ linkActionUrl }';
}

function buttonClick() {
$('#form').submit();
}


Java;



@ActionMapping("buttonAction")
public void buttonAction(@ModelAttribute("model") Model model, BindingResult result, ActionRequest request, ActionResponse response, ModelMap modelMap) {
}

@ActionMapping("linkAction")
public void linkAction(@ModelAttribute("model") Model model, BindingResult result, ActionRequest request, ActionResponse response, ModelMap modelMap) {
}

Aucun commentaire:

Enregistrer un commentaire