Для интерфейса java.util.List Rest API Spring boot не найден основной конструктор или конструктор по умолчанию.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Для интерфейса java.util.List Rest API Spring boot не найден основной конструктор или конструктор по умолчанию.

Сообщение Anonymous »

Я передаю тело запроса POST-запросу почтальона, похожему на этот:

"name":"Mars",
"artifacts":[
{
"elements":[
{
"name":"carbon",
"amount":0.5,
"measurement":"g"
}
],
"typeName":"typeA"
},
{
"elements":[
{
"name":"hydrogen",
"amount":0.2,
"measurement":"g"
}
],
"typeName":"typeB"
}
]


Метод создания в контроллере rest выглядит следующим образом.

@RequestMapping("/create")
public Planet create(@RequestBody Planet data) {
Planet mars = planetService.create(data.getName(),data.getArtifacts());
return mars;


Планета и все ее вложенные объекты имеют конструктор по умолчанию, например:

public Planet() {}


Однако я не могу создать новый объект планеты из-за отсутствия конструктора по умолчанию. Пожалуйста, помогите!

РЕДАКТИРОВАТЬ:
Класс Planet

public class Planet {
@JsonProperty("name")
private String name;
@Field("artifacts")
private List artifacts;

public Planet() {}

public Planet(String name, List artifacts)
{
this.name = name;
this.artifacts = artifacts;
}
//setters and getters

}


Класс артефакта:

public class Artifact() {
@Field("elements")
private List elements;
@JsonProperty("typeName")
private String typeName;

public Artifact() {}

public Artifact(String typeName, List elements)
{
this.typeName = typeName;
this.elements = elements;
}
}


Класс элемента:

public class Element() {
@JsonProperty("elementName")
private String name;
@JsonProperty("amount")
private double amount;
@JsonProperty("measurement")
private String measurement;

public Element() {}

public Element(String name, double amount, String measurement)
{
//assignments
}
}


Подробнее здесь: https://stackoverflow.com/questions/546 ... est-api-sp
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»