有没有办法动态启用/禁用杰克逊的UNWRAP_ROOT_VALUE
and 。
我必须根据调用的服务启用/禁用这些属性,有些请求需要 a而有些则不需要。WRAP_ROOT_VALUE
ObjectMapper
JsonRootName
我@JsonRootName
在确实需要它的类中有注释。
我有一个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));
}