Java Jackson没有可从数值反序列化的int/int参数构造函数/工厂方法

Java Jackson没有可从数值反序列化的int/int参数构造函数/工厂方法,java,jackson,Java,Jackson,我将其作为部分JSON: "nextStages":[1] 我的Java中有这样的功能: private List<Integer> nextStages; ..... public List<Integer> getNextStages() { return nextStages; } public void setNextStages(List<Integer> nextStages) { this.nextStages = nextS

我将其作为部分JSON:

 "nextStages":[1]
我的Java中有这样的功能:

private List<Integer> nextStages;
.....
public List<Integer> getNextStages() {
    return nextStages;
}
public void setNextStages(List<Integer> nextStages) {
    this.nextStages = nextStages;
}

那么,如何进行适当的序列化/反序列化呢?

您需要发布整个
JSON
,以便我们了解有关错误的更多信息

这对我来说很好:

test.json

{
  "nextStages":[1]
}
StageObject.java

public class StageObject {

    private List<Integer> nextStages;

    public List<Integer> getNextStages() {
        return nextStages;
    }
}
输出:

{
  "nextStages" : [ 1 ]
}

希望这有帮助。

您有默认构造函数吗?没有构造函数,所以是的,我只有默认构造函数。mesage告诉您Jackson需要从单个数值创建StageObject。所以,你所说的与你在问题中所声称的不相符。发布整个JSON文档,以及映射到此JSON文档的所有类。
public class ReadTestJSON {
    public static void main(String[] args)
        throws IOException
    {
        ObjectMapper mapper = new ObjectMapper();
        mapper.enable(SerializationFeature.INDENT_OUTPUT);
        StageObject stageObject = mapper.readValue(new File("test.json"), StageObject.class);
        mapper.writeValue(System.out,stageObject);
    }
}
{
  "nextStages" : [ 1 ]
}