Jacksonを使ってJSONをJavaオブジェクトに変換(デシリアライズ)しようとしたときに、以下のようなInvalidDefinitionExceptionが起きたときの対処法をメモしておきます。
環境
原因
Javaオブジェクトに変換するためのJavaクラスにデフォルトコンストラクタが定義されていないからです。Jacksonでは、JSONをJavaオブジェクトに変換(デシリアライズ)するときにはデフォルトコンストラクタを定義する必要があるようです。
対策
以下のようにデフォルトコンストラクタを定義してやればOKです。
まとめ
JacksonでInvalidDefinitionExceptionが起きたときの対処法でした。