Метод контроллера:
@PostMapping("/nova")
@ResponseStatus(HttpStatus.CREATED)
public String adicionarTemp(@RequestBody TempCaptacao temp) {
Класс параметров:
public class TempCaptacao{
String dsNome;
...
List<TempResponsavel> listaResponsavel;
public TempCaptacao() {
}
Класс SubParam:
public class TempResponsavel{
Long id;
String dsNome;
...
public TempResponsavel() {
}
Когда Angular вызывает этот метод, передавая JSON (какниже) мои источники возвращают эту ошибку:
.wsmsDefaultHandlerExceptionResolver: Resolved [org.springframework.http.converter.HttpMessageNotReadableException: ошибка синтаксического анализа JSON: Невозможно создать экземпляр com.spin.spincare.controller.MovAtendimentoCaptacaoController$TempCaptacao
(хотя существует хотя бы один создатель):создавать экземпляры нестатического внутреннего класса только с помощью конструктора без аргументов по умолчанию;Вложенное исключение - com.fasterxml.jackson.databind.exc.MismatchedInputException: Невозможно создать экземпляр com.spin.spincare.controller.MovAtendimentoCaptacaoController$TempCaptacao
(хотя существует по крайней мере один создатель): может только создавать экземпляр нестатического внутреннего класса, используя конструктор по умолчанию без аргументов в [Source: (PushbackInputStream);строка: 1, столбец: 2]]
JSON:
{
"dsNome":"teste",
"dsGenero":"Masculino",
"dtNascimento":"2000-12-30T02:00:00.000Z",
"idConvenio":16,
"dsCep":"12321321",
"dsEndereco":"teste",
"dsEstado":"SC",
"dsCidade":"",
"dsBairro":"",
"dsComplemento":"",
"listaResponsavel":[
{
"id":1,
"dsNome":"teste",
"nrCelular":"231321312213",
"dsEmail":"",
"dsGrau":"Pai"
}
]
}
У меня есть те пустые методы конструктора, но со списком внутри моего класса, как я могу передать этот класс в качестве параметрак моему методу POST?
EDIT
Отсутствует статическое определение в моем классе TempCaptacao. Спасибо!