0
我檢查了我的web.xml和spring-servlet.xml,我沒發現任何錯誤。然後我檢查了我的Controller和.ajax(),但仍然找不到任何錯誤。我嘗試JSON.stringify
,@RequestParam
,在spring-servlet.xml
中加入json handler
。甚至將@RequestBody
更改爲@RequestBody(required = false)
。他們沒有工作,仍然得到這個消息:控制器無法從JQuery.ajax接收JSON
org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver.handleHttpMessageNotReadable Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: Required request body is missing: public java.lang.String com.Test.Controller.Login.login(com.Test.Model.User)
這裏是我的控制器:
@RequestMapping(value = "/main", method = RequestMethod.GET)
public String login (@RequestBody User user) {
boolean result = userSer.login(user);
if (result)
return "success";
else
return "fail";
}
我的ajax:
function login() {
//I can read the value in chrome's debug.
var user = {
"username": $("#username").val(),
"password": $("#password").val()
};
$.ajax({
url: "/login/main",
type: "GET",
dataType: "json",
//contentType:"application/json",
data: JSON.stringify(user),
success: function() {
alert("success")
},
error: function() {
alert("fail")
}
});
}
我曾嘗試自己解決這個問題,但仍然無法弄清楚。
感謝您的幫助。我嘗試了你的方法,並且成功了。 –