0

我想解析这个 json 字符串,但出现错误,我尝试了不同的方法,但它不起作用

我的错误

引起:com.fasterxml.jackson.databind.exc.MismatchedInputException:无法反序列arrest_warrants化 START_ARRAY 令牌的实例

{
  "arrest_warrants": [
    {
      "issuing_country_id": "CO",
      "charge": "dfdfd",
      "charge_translation": null
    }
  ],
  "weight": 0,
  "forename": "MOISES",
  "date_of_birth": "1965/06/02",
  "entity_id": "2021/40054"
}

解析调用:我在下面的行中收到错误

Interpoldetails intterdt = restTemplate.getForObject("xxxurl"+id, Interpoldetails.class);

我的课

@JsonIgnoreProperties(ignoreUnknown = true)
public class Interpoldetails {
    private Integer weight;
    private String date_of_birth;
    private String entity_id;
    private String name;
    private arrest_warrants arrest_warrants;
    private String[] languages_spoken_ids;
    private Integer height;
    private Integer sex_id;
    private String country_of_birth_id;
    private String place_of_birth;
    public Integer getWeight() {
        return weight;
    }
    public void setWeight(Integer weight) {
        this.weight = weight;
    }
    public String getDate_of_birth() {
        return date_of_birth;
    }
    public void setDate_of_birth(String date_of_birth) {
        this.date_of_birth = date_of_birth;
    }
    public String getEntity_id() {
        return entity_id;
    }
    public void setEntity_id(String entity_id) {
        this.entity_id = entity_id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    
    public String[] getLanguages_spoken_ids() {
        return languages_spoken_ids;
    }
    public void setLanguages_spoken_ids(String[] languages_spoken_ids) {
        this.languages_spoken_ids = languages_spoken_ids;
    }
    public Integer getHeight() {
        return height;
    }
    public void setHeight(Integer height) {
        this.height = height;
    }
    public Integer getSex_id() {
        return sex_id;
    }
    public void setSex_id(Integer sex_id) {
        this.sex_id = sex_id;
    }
    public String getCountry_of_birth_id() {
        return country_of_birth_id;
    }
    public void setCountry_of_birth_id(String country_of_birth_id) {
        this.country_of_birth_id = country_of_birth_id;
    }
    public String getPlace_of_birth() {
        return place_of_birth;
    }
    public void setPlace_of_birth(String place_of_birth) {
        this.place_of_birth = place_of_birth;
    }
    public arrest_warrants getArrest_warrants() {
        return arrest_warrants;
    }
    public void setArrest_warrants(arrest_warrants arrest_warrants) {
        this.arrest_warrants = arrest_warrants;
    }
    
    
}

我的内心阶层

@JsonIgnoreProperties(ignoreUnknown = true)
public class arrest_warrants {
    private String issuing_country_id;
    private String charge;
    public String getIssuing_country_id() {
        return issuing_country_id;
    }
    public void setIssuing_country_id(String issuing_country_id) {
        this.issuing_country_id = issuing_country_id;
    }
    public String getCharge() {
        return charge;
    }
    public void setCharge(String charge) {
        this.charge = charge;
    }
}
4

2 回答 2

0

由于逮捕证是一个对象数组,您可以创建逮捕证对象并在 Interpoldetails 类中,使用private List<arrest_warrant> arrest_warrants

于 2021-06-30T19:23:55.460 回答
0

它应该是逮捕令 [] 而不是字符串 []

于 2021-06-30T18:06:51.327 回答