У меня есть приложение Spring REST, которое может сортировать объект в JSON при возникновении запроса GET. Однако что мне делать для методов POST. Я отправляю объект JSON, но он не может отменить его в Java-объект. Вот метод моего контроллера:Как развязать объект JSON с классом Java?
@RequestMapping(value = "/user", method = RequestMethod.POST)
public void createUser(HttpServletResponse response, @RequestBody User user) {
...
response.setStatus(HttpServletResponse.SC_OK);
}
Я посылаю мой JSON так:
var userName = $('#userName').val();
var password = $('#password').val();
var mail = $('#mail').val();
var admin = $("#admin").is(':checked');
var user = {userName: userName, password: password, mail: mail, admin:admin};
$.ajax({
async : false,
type: 'POST',
contentType: 'application/json',
url: '/sfd/user',
data: user,
dataType: 'json',
success: function(data) {
...
},
error: function(data) {
...
}
});
PS: здесь: http://blog.springsource.com/2010/01/25/ajax-simplifications-in-spring-3-0/ он говорит:
Если есть подтверждение ошибки, HTTP 400 возвращается с сообщениями об ошибке , в противном случае возвращается HTTP 200.
У меня 400 ошибок запроса. Может быть, проблема связана с этим?
PS2: Должен ли я отправлять объект User после того, как я установил все его элементы? Я имею в виду, что объект User имеет некоторые другие атрибуты, то есть адрес, но я не устанавливаю и не отправляю его с клиента.
PS3: Когда я отлаживаю метод excception AbstractHandlerExceptionResolver, я вижу эту ошибку. Он говорит, что «u» - неопределенный символ (я протестировал его, что «u» - это первый ключ JSON => имя_пользователя).
так , что происходит вместо этого? – Bozho
@Bozho, этот вопрос связан с этим http://stackoverflow.com/questions/7481055/sending-json-data-to-server-error, он дает 400 ошибок с неправильным запросом – kamaci
Есть ли у вас предложение? – kamaci