gpt4 book ai didi

java - 我正在使用 SpringBoot 和 Jquery 以及 Ajax 编写一个 CRUD 应用程序。我收到以下异常

转载 作者:行者123 更新时间:2023-12-01 16:28:47 25 4
gpt4 key购买 nike

我正在使用 SpringBoot 和 Jquery 以及 Ajax 编写一个 CRUD 应用程序。我收到以下异常:(当我尝试添加新用户时遇到异常)

.HttpMessageNotReadableException: JSON parse error: Cannot deserialize instance of 
`ru.javamentor.predproject3.model.User` out of START_ARRAY token; nested exception is
com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of
`ru.javamentor.predproject3.model.User` out of START_ARRAY token
at [Source: (PushbackInputStream); line: 1, column: 1]]

这是我的js。 GET 方法工作正常。

$(document).ready(function () {
gettingListOfUsers();
addingUser();
});

function gettingListOfUsers() {
$.ajax({
url: '/rest/users',
type: 'GET',
dataType: 'json',
success: function (listOfUsers) {
let userData = '';
$.each(listOfUsers, function (index, user) {
userData += '<tr>';
userData += '<td>' + user.id + '</td>';
userData += '<td>' + user.firstName + '</td>';
userData += '<td>' + user.secondName + '</td>';
userData += '<td>' + user.email + '</td>';
userData += '<td>' + user.role + '</td>';
userData += '<td> <button class="btn btn-info" data-toggle="modal">update</button> ' +
'<a class="btn btn-danger" onclick="if (!(confirm(\'Are you sure you want to delete this user?\'))) ' +
'return false">delete</a></td>';

userData += '</tr>';
});

$('#userTable2').html(userData);
},

error: function (error) {
alert("Error");
}
})
}

function addingUser() {
$('#addingButton').on('click', function (event) {
event.preventDefault();

const addingFormData = $('#addingUserForm').serializeArray();
// alert(addingFormData.length);

$.ajax({
url: '/rest/adding',
type: 'POST',
data: JSON.stringify(addingFormData),
dataType: 'json',
contentType: "application/json",
success: function (responseData, status, jqXHR) {
alert('User has been added successfully');
gettingListOfUsers();
},
error: function () {
alert('Error');
}
})
})
}

我的程序甚至无法到达 Controller 。它落在错误 block 中

@PostMapping("/添加")

public ResponseEntity<User> addingPost(@RequestBody User user) {

HttpHeaders httpHeaders = new HttpHeaders();

user.setPassword(passwordEncoder.encode(user.getPassword()));

userService.addUser(user);

return new ResponseEntity<>(user, httpHeaders, HttpStatus.CREATED);
}

最佳答案

错误消息准确地说明了问题所在。它想要从一段 jason 中创建一个 User(需要一个 jason 对象),但是从请求中发送的字符串以 [ 开头,它表示一个数组。

关于java - 我正在使用 SpringBoot 和 Jquery 以及 Ajax 编写一个 CRUD 应用程序。我收到以下异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62091127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com