I have a JS function which is supposed to post several Maps that i need in my controller :
var valuesOriginal = new Map();
var valuesEdited = new Map();
var valuesBackup = new Map();
$.each($('#zgImport').serializeArray(), function(i, field) {
if(field.name.substring(0,13) == "userLinesAuto"){
valuesEdited.set(field.name, field.value);
}else if (field.name.substring(0,17) == "userLinesOriginal"){
valuesBackup.set(field.name, field.value);
}else if (field.name.substring(0,9) == "userLines"){
valuesOriginal.set(field.name, field.value);
}
});
$.ajax({
type : 'POST',
url : '<%= importAfterValidationUsers %>',
data : {
original : valuesOriginal,
edited : valuesEdited,
backup : valuesBackup,
formValidationSource : "original"
},
success: function(serverResponse) {
alert("ok");
},
error: function () {
alert("error");
},
timeout: 3000
});
But in my controller my maps are always null
public void importAfterValidationUsers(ResourceRequest request, ResourceResponse response) throws IOException {
Map<String, String[]> users = request.getParameterMap();
Map lala = request.getParameter("original");
}
The request.getParameterMap() contains the "formValidationSource" var but not the map, and request.getParameter("original") returns null. What do i miss?