167.9. 使用 Jackson 启用或禁用功能
Jackson 具有很多功能,您可以启用或禁用其 ObjectMapper 使用的功能。例如,要在 marshalling 时禁用未知属性失败,您可以使用 disableFeatures 进行配置:
 <dataFormats>
      <jacksonxml id="jacksonxml" unmarshalTypeName="com.foo.MyPojo" disableFeatures="FAIL_ON_UNKNOWN_PROPERTIES"/>
 </dataFormats>
 <dataFormats>
      <jacksonxml id="jacksonxml" unmarshalTypeName="com.foo.MyPojo" disableFeatures="FAIL_ON_UNKNOWN_PROPERTIES"/>
 </dataFormats>您可以通过使用逗号分隔值来禁用多个功能。功能的值必须是来自以下 enum 类的 Jackson 的 enums 的名称
- com.fasterxml.jackson.databind.SerializationFeature
- com.fasterxml.jackson.databind.DeserializationFeature
- com.fasterxml.jackson.databind.MapperFeature
要启用功能,请使用 enableFeatures 选项。
在 Java 代码中,您可以使用 camel-jackson 模块中的类型安全方法:
JacksonDataFormat df = new JacksonDataFormat(MyPojo.class); df.disableFeature(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); df.disableFeature(DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES);
JacksonDataFormat df = new JacksonDataFormat(MyPojo.class);
df.disableFeature(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
df.disableFeature(DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES);