Java - Spring - portlet API @Controller how to read ajax parameters -
i have following latest jquery v aajx call multiple parameters.
in java code able first parameter value rest of them found null.
$.ajax({ url : '<portlet:resourceurl id="entitledrequest"/>', data: '<c:out value="pfx= ${account.accountnumber}-${outletui.outlet}-${count}&acc=${account.accountnumber}" />', cache: false, success : function(result) { //targetelem.html(result); update ui } });
following java code first parameter not null after params null, have debug http request parameters present in request object clue whats wrong here ?
controller("ajaxrequestcontroller") @requestmapping(value = "view") public class ajaxrequestcontroller implements portletconfigaware { @resourcemapping("entitledrequest") public void getserviceautocomplete(resourcerequest request, resourceresponse response) throws ioexception { string elemprefix = request.getparameter("pfx"); string acc = request.getparameter("acc"); // found null string mac = request.getparameter("mac"); // found null }...
use @requestparam
annotation read parameters.
@resourcemapping("entitledrequest") public void getserviceautocomplete(@requestparam("pfx") string elemprefix, @requestparam string acc, @requestparam string mac, resourcerequest request, resourceresponse response) throws ioexception { }
reason:
the parameters
sent ajax
doesn't fall in portletnamespace
. hence, not part of resourcerequest
can found in normal httpservletrequest
. spring
searches @requestparam
names in httpservletrequest
.
you can either use approach suggested me -or- can add <portlet:namespace/>
parameters in ajax
call keeping controller
code intact.
Comments
Post a Comment