2015-05-19 18 views
2

我有一個API託管/寫在DropWizard中。它消耗JSON並且效果很好解析具有意外屬性的json時出錯 - 如何放寬解析規則?

@POST 
public void somePost(SomeObject object) 

其中SomeObject是pojo。傑克遜將JSON反序列化到對象中沒有問題。

爲了進一步證明使用此API的「調用代碼」,我開始添加一些尚未在SomeObject中的屬性。然而(可能是傑克遜)現在拋出一個「錯誤解析json」錯誤。

我想放鬆一些規則,這樣Jackson對傳入的JSON(GSON默認會這樣做)無法識別的字段有更寬容的含義。我試過@JsonIgnoreProperties級別的註釋,但沒有運氣。

在此先感謝。

回答

4

你說你試過@JsonIgnoreProperties。你是否嘗試過這樣?

@JsonIgnoreProperties(ignoreUnknown =真)

測試上方的一個和它應該工作。

+0

啊好吧不,我只是嘗試沒有註釋構造。這看起來像票。謝謝! –

0

另一種選擇是通過禁用DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES來全局允許任何和所有未知屬性。忽略所有未映射的內容可能會很危險,但對於「Open Content」風格的用法,它的效果很好。