gpt4 book ai didi

java - Java中的JSON反序列化错误

转载 作者:行者123 更新时间:2023-12-01 12:16:13 25 4
gpt4 key购买 nike

我正在尝试反序列化从 eBay API 获得的一些 JSON,但收到错误:com.fasterxml.jackson.databind.JsonMappingException:无法从 START_ARRAY 中反序列化 java.lang.String 的实例 token

返回的 JSON 有很多级别。例如

{"searchResult":[{"@count":"100","item":[{"itemId":["281492499859"],"title":["松下 Lumix TZ20 数码相机状况良好”],...

这是针对 CompletedListing 中名为 itemId 的属性(下面定义的类)

我使用以下行调用此方法:

CompletedListingContainer listing = mapper.readValue(new File("C:\\resource\\jsonresult.txt"), CompletedListingContainer.class);`

这是我的类(class)。

CompletedListingContainer

public class CompletedListingContainer {

private ArrayList<CompletedListing> item;

private ArrayList<SearchResult> searchResult;

private List<String> paginationOutput;

@JsonIgnore
public List<String> getPaginationOutput() {
return paginationOutput;
}

public ArrayList<SearchResult> getSearchResult() {
return searchResult;
}

public ArrayList<CompletedListing> getItem() {
return item;
}
}

搜索结果

public class SearchResult {

@JsonProperty("@count")
private String count;

private ArrayList<CompletedListing> item;

@JsonIgnore
public String getCount() {
return count;
}

public ArrayList<CompletedListing> getItem() {
return item;
}
}

已完成列表

public class CompletedListing {

@JsonProperty("itemId")
private String itemId;

private String title;

@JsonProperty("itemId")
public String getItemId() {
return itemId;
}

@JsonProperty("title")
public String getTitle() {
return title;
}
}

任何帮助将不胜感激。如果您需要更多信息,请告诉我。

最佳答案

{"itemId":["281492499859"] 表示您的 CompletedListing.itemId 属性应该是列表或数组。

关于java - Java中的JSON反序列化错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26995461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com