Я пишу простой get
метод, использующий webclient для получения информации о свойствах.Но затем я получаю сообщение об ошибке ниже:
{
"timestamp": "2019-02-25T06:57:03.487+0000",
"path": "/modernmsg/getentity",
"status": 500,
"error": "Internal Server Error",
"message": "JSON decoding error: Cannot deserialize instance of `com.reputation.api.modernmsg.model.Entity` out of START_ARRAY token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `com.reputation.api.modernmsg.model.Entity` out of START_ARRAY token\n at [Source: UNKNOWN; line: -1, column: -1]"
}
Фактический ответ json:
[
{
"name": "Point Breeze",
"street": "488 Lemont Dr",
"city": "Nashville",
"state": "TN",
"postal_code": "37216",
"slug": "point-breeze"
}
]
Ниже приведен метод в моем классе контроллера для получения свойства:
@RequestMapping(method = RequestMethod.GET, value = "/getentity")
public Mono<Entity> getEntity(@RequestParam("token") String token, @RequestParam("name") String name) {
return service.fetchEntity(token, name);
}
И мой метод fetchEntity:
public Mono<Entity> fetchEntity(String token, String name) {
String url = host + version + entityEndpoint + "?token=" + token + "&name=" + name;
return webClient.get().uri(url).retrieve().bodyToMono(Entity.class);
}
Ниже представлена моя модель сущности:
package com.reputation.api.modernmsg.model;
import java.util.List;
public class Entity {
private List<ModernMsgEntity> modernMsgEntity;
public List<ModernMsgEntity> getModernMsgEntity() {
return modernMsgEntity;
}
public void setModernMsgEntity(List<ModernMsgEntity> modernMsgEntity) {
this.modernMsgEntity = modernMsgEntity;
}
}
Модель ModernMsgEntity:
package com.reputation.api.modernmsg.model;
public class ModernMsgEntity {
private String name;
private String street;
private String city;
private String state;
private String postal_code;
private String slug;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getPostal_code() {
return postal_code;
}
public void setPostal_code(String postal_code) {
this.postal_code = postal_code;
}
public String getSlug() {
return slug;
}
public void setSlug(String slug) {
this.slug = slug;
}
}
Позвольте мнезнать, если вам нужно больше информации.