无法将字符串反序列化为 Java 对象
Cannot deserialize String to Java object
(数据class)Entity.java
@Data
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
public class Entity implements Serializable {
private String id;
private String name;
private String status;
private ZonedDateTime registrationDatetime;
private ZonedDateTime updatedDatetime;
private ZonedDateTime createdDatetime;
}
(数据class)Entities.java
@Data
@AllArgsConstructor
@JsonDeserialize
public class Entities implements Serializable {
private List<Entity> entities;
}
我试过运行这个语句:
TypeReference<ResponseModel<Entities>> typeReference = new TypeReference<ResponseModel<Entities>>() {};
ResponseModel<Entities> response = objectMapper.readValue(result.getResponse().getContentAsString(), typeReference);
我得到了这个错误:
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `model/Entities` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
我已经把 @JsonDeserialize
和 implements Serializable
我错过了什么?
尝试为实体也提供@NoArgsConstructor class。这应该有效。
(数据class)Entity.java
@Data
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
public class Entity implements Serializable {
private String id;
private String name;
private String status;
private ZonedDateTime registrationDatetime;
private ZonedDateTime updatedDatetime;
private ZonedDateTime createdDatetime;
}
(数据class)Entities.java
@Data
@AllArgsConstructor
@JsonDeserialize
public class Entities implements Serializable {
private List<Entity> entities;
}
我试过运行这个语句:
TypeReference<ResponseModel<Entities>> typeReference = new TypeReference<ResponseModel<Entities>>() {};
ResponseModel<Entities> response = objectMapper.readValue(result.getResponse().getContentAsString(), typeReference);
我得到了这个错误:
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `model/Entities` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
我已经把 @JsonDeserialize
和 implements Serializable
我错过了什么?
尝试为实体也提供@NoArgsConstructor class。这应该有效。