8

Jackson のUNWRAP_ROOT_VALUEandを動的に有効/無効にする方法はありますか。 呼び出されるサービスに応じて、これらのプロパティを有効/無効にする必要があります。一部の要求には が必要で、一部の要求には必要ありません。WRAP_ROOT_VALUEObjectMapper
JsonRootName

私は@JsonRootNameそれを必要とするクラスに注釈を持っています。Jackson オブジェクト マッパーを拡張
するカスタムクラスがあります。 呼び出されたサービスに応じてプロパティを有効/無効にするメソッドを呼び出していますが、機能していないようです。ObjectMapper

public void setWrapValue(boolean wrap) {

    final AnnotationIntrospector introspector = new JacksonAnnotationIntrospector();     

    this.configure(org.codehaus.jackson.map.DeserializationConfig.Feature.UNWRAP_ROOT_VALUE, wrap);

    this.configure(org.codehaus.jackson.map.SerializationConfig.Feature.WRAP_ROOT_VALUE, wrap);
    this.setDeserializationConfig(this.getDeserializationConfig().withAnnotationIntrospector(introspector));

    this.setSerializationConfig(this.getSerializationConfig().withAnnotationIntrospector(introspector));
 }
4

1 に答える 1