Я вызываю метод AJAX с помощью события onClick () кнопки.
function submitDateFunction()
{
var previousExceptions=new Object();
previousExceptions.batchId=batchId;
previousExceptions.dateFrom=dateFrom;
previousExceptions.dateTo=dateTo;
$.ajax({
type:"POST",
url : 'getPreviousExceptions/',
dataType:'json',
data: JSON.stringify(previousExceptions),
contentType : 'application/json',
success : function(data) {
alert("success");
},
error: function(jqXHR, exception) {
alert(jqXHR.status);
}
});
Метод контроллера My Spring
@RequestMapping(value={"batchdetails/previousExceptions/getPreviousExceptions"},method=RequestMethod.POST)
@ResponseBody
public List<BatchExceptionDetails> displayPreviousExceptions(@RequestBody PreviousException previousException)
{
...
return batchExceptionDetails;
}
}
Вот мой предыдущий класс исключений
package com.bmdashboard.beans;
import java.util.Date;
public class PreviousException {
private int batchId;
private Date dateFrom;
private Date dateTo;
public PreviousException() {
super();
}
public int getBatchId() {
return batchId;
}
public void setBatchId(int batchId) {
this.batchId = batchId;
}
public Date getDateFrom() {
return dateFrom;
}
public void setDateFrom(Date dateFrom) {
this.dateFrom = dateFrom;
}
public Date getDateTo() {
return dateTo;
}
public void setDateTo(Date dateTo) {
this.dateTo = dateTo;
}
@Override
public String toString() {
return "PreviousException [batchId=" + batchId + ", dateFrom="
+ dateFrom + ", dateTo=" + dateTo + "]";
}
}
Кнопка, которая вызывает функцию JavaScript
<input type="submit" value="Submit" onclick="submitDateFunction()" >
Я получаю значения через:
var batchId=document.getElementById('batchIdForAjax').innerHTML;
var dateFrom;
var dateTo;
$(function() {
$( "#datepickerFrom" ).datepicker({ dateFormat: "yy-mm-dd" });
$("#datepickerFrom").on("change",function(){
dateFrom = $(this).val();
});
});
$(function() {
$( "#datepickerTo" ).datepicker({ dateFormat: "yy-mm-dd" });
$("#datepickerTo").on("change",function(){
dateTo = $(this).val();
});
});
Я получаю ошибкуPOST http: //.../getPreviousExceptions/ 400 (неверный запрос) при отладке с помощью консоли инструментов Google Chrome Developer.