我在DropWizard中托管/编写了一个API。它消耗JSON并且运行良好
@POST
public void somePost(SomeObject object)
SomeObject
是pojo的地方。杰克逊将JSON反序列化到对象中没有问题。
以后证明"呼叫代码"使用此API我开始添加一些尚未在SomeObject
中的属性。然而(大概是杰克逊)现在抛出一个"错误解析json"错误。
我想稍微放宽规则,以便杰克逊对传入JSON中无法识别的字段更加宽容(默认情况下GSON会这样做)。我尝试了@JsonIgnoreProperties
类级注释,但没有运气。
提前致谢。
答案 0 :(得分:4)
你说你试过@JsonIgnoreProperties。你试过这样的吗?
@JsonIgnoreProperties(ignoreUnknown = true)
经过测试,它应该可以正常工作。
答案 1 :(得分:0)
另一种选择是通过禁用DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
来全局允许任何和所有未知属性。忽略一切没有映射的东西可能是危险的,但对于"开放内容"风格用法很棒。