[英]spring jackson Map Deserialization
我通過 Spring 控制器傳遞一個 json 對象,如下所示:
{
"dataset":"myDataset",
"typeProperties":[
"myProperty"
],
"stopWords":{
"de":[ "daß","allem","dem"],
"fr":["salut"]
}
}
對應的java對象是:
public class DatasetConfigRequest {
String dataset = "";
List<String> typeProperties;
HashMap<String,ArrayList<String>> stopWords = new HashMap<String,ArrayList<String>>();
//getter and setters
但是當我通過它時,我收到以下錯誤:
JSON parse error: Cannot deserialize instance of `java.util.HashMap<java.lang.Object,java.lang.Object>` out of START_ARRAY token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.util.HashMap<java.lang.Object,java.lang.Object>` out of START_ARRAY token
at [Source: (PushbackInputStream); line: 1, column: 104] (through reference chain: eu.qanswer.core2.server.controller.payload.dataset.DatasetConfigRequest["stopWords"])]
我知道問題是具有 ArrayList 值的 HashMap。 但是如何解決這個問題呢?
謝謝 D063520
創建新類並將其命名為 stopWords 添加 id 和列表字段,最后向數據集類添加一個字段,將其命名為 stopWords
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.