3

Fasterxml Jackson 2.2.2 を使用しています

boolean(プリミティブ) 属性を持つ単純な pojo があります。デフォルトBeanSerializerBeanPropertyWritterシリアライズしようとすると、値が の場合、この属性はスキップされますfalse

私が欲しい:

{"id":1, "enabled":false}

私が得るものは次のとおりです。

{"id":1}

のコードBeanPropertyWritterは次のとおりです。

// and then see if we must suppress certain values (default, empty)
    if (_suppressableValue != null) {
        if (MARKER_FOR_EMPTY == _suppressableValue) {
            if (ser.isEmpty(value)) {
                return;
            }
        } else if (_suppressableValue.equals(value)) {
            return;
        }
    }

私はそれをデバッグし、BeanPropertyWritter._suppressableValueequalsBoolean(false)であることを発見したので、偽のブール値がこのブロックに到着すると、単に戻り、出力は返されません。

私のオプションは何ですか?属性のライターを構成して、その設定を解除できます_suppressableValueか? 最も簡単でシンプルな解決策は何ですか?

4

1 に答える 1