私は Jackson 2.1.4 を使用しており、Event クラスを拡張するオブジェクトのコレクションをシリアライズしたいと考えており、JSON にはポリモーフィズムのためにクラス名を含める必要があります。Event に @JsonTypeInfo アノテーションを付けましたが、残念ながら CLASS を戦略として使用することはできません。これは、オブジェクトのインスタンス化パターンが「new FooEvent(){{bar=someValue;}}」であるため、匿名の内部クラスが作成されるためです。匿名の内部クラスではなく、JSON の型として「FooEvent」を入れたい。
私が必要としているのはこれを行うことのようです:
@JsonTypeInfo(use= JsonTypeInfo.Id.CUSTOM, include= JsonTypeInfo.As.PROPERTY, property="type")
しかし、クラスの名前を出力する独自のカスタム ID シリアライザーを登録するにはどうすればよいでしょうか?