# Deprecated API

## Contents

- Deprecated Interfaces
- Deprecated Classes
- Deprecated Fields
- Deprecated Methods
- Deprecated Constructors
- Deprecated Annotation Type Elements

Deprecated Interfaces
Interface and Description
com.fasterxml.jackson.databind.ser.BeanPropertyFilter Since 2.3: use `PropertyFilter` instead.

Deprecated Classes
Class and Description
com.fasterxml.jackson.databind.jsonschema.JsonSchema Since 2.2, we recommend use of external JSON Schema generator module</module>
com.fasterxml.jackson.databind.annotation.NoClass Since 2.4 use `Void` instead as the general "no class specified" marker.

Deprecated Fields
Field and Description
com.fasterxml.jackson.databind.deser.impl.ReadableObjectId.id
com.fasterxml.jackson.databind.deser.std.UntypedObjectDeserializer.instance Since 2.3, construct a new instance, needs to be resolved
com.fasterxml.jackson.databind.deser.impl.ReadableObjectId.item Prefer using `ReadableObjectId.resolve()`, which is able to handle external id resolving mechanism.
com.fasterxml.jackson.databind.SerializerProvider.TYPE_OBJECT

Deprecated Methods
Method and Description
com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer._createContextual(DeserializationContext, BeanProperty, JsonDeserializer<?>) Since 2.3, use `DelegatingDeserializer.newDelegatingInstance(com.fasterxml.jackson.databind.JsonDeserializer<?>)` instead
com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase._deserializeWithNativeTypeId(JsonParser, DeserializationContext)
com.fasterxml.jackson.databind.ser.BeanPropertyWriter._handleSelfReference(Object, JsonSerializer<?>) Since 2.3 Use overloaded variants
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addCtor(AnnotatedParameter, String, boolean, boolean) Since 2.4 call method that takes additional 'explName' argument, to indicate whether name of property was provided by annotation (and not derived from accessor name); this method assumes the name is explicit if it is non-null.
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addCtor(AnnotatedParameter, String, boolean, boolean, boolean)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addField(AnnotatedField, String, boolean, boolean) Since 2.4 call method that takes additional 'explName' argument, to indicate whether name of property was provided by annotation (and not derived from accessor name); this method assumes the name is explicit if it is non-null.
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addField(AnnotatedField, String, boolean, boolean, boolean)
com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider.addFilter(String, BeanPropertyFilter) since 2.3
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addGetter(AnnotatedMethod, String, boolean, boolean) Since 2.4 call method that takes additional 'explName' argument, to indicate whether name of property was provided by annotation (and not derived from accessor name); this method assumes the name is explicit if it is non-null.
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addGetter(AnnotatedMethod, String, boolean, boolean, boolean)
com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.addInjectable(String, JavaType, Annotations, AnnotatedMember, Object)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addSetter(AnnotatedMethod, String, boolean, boolean) Since 2.4 call method that takes additional 'explName' argument, to indicate whether name of property was provided by annotation (and not derived from accessor name); this method assumes the name is explicit if it is non-null.
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.addSetter(AnnotatedMethod, String, boolean, boolean, boolean)
com.fasterxml.jackson.databind.ser.PropertyBuilder.buildWriter(BeanPropertyDefinition, JavaType, JsonSerializer<?>, TypeSerializer, TypeSerializer, AnnotatedMember, boolean) Since 2.3, use variant that takes `SerializerProvider` as first argument -- to be removed from 2.4
com.fasterxml.jackson.databind.PropertyMetadata.construct(boolean, String)
com.fasterxml.jackson.databind.deser.impl.ObjectIdReader.construct(JavaType, PropertyName, ObjectIdGenerator<?>, JsonDeserializer<?>, SettableBeanProperty)
com.fasterxml.jackson.databind.ser.impl.ObjectIdWriter.construct(JavaType, String, ObjectIdGenerator<?>, boolean)
com.fasterxml.jackson.databind.deser.impl.ObjectIdReader.construct(JavaType, String, ObjectIdGenerator<?>, JsonDeserializer<?>, SettableBeanProperty)
com.fasterxml.jackson.databind.ser.std.MapSerializer.construct(String[], JavaType, boolean, TypeSerializer, JsonSerializer Since 2.3 use the method that takes `filterId`
com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.depositSchemaProperty(BeanPropertyWriter, JsonObjectFormatVisitor, SerializerProvider)
com.fasterxml.jackson.databind.ser.BeanPropertyFilter.depositSchemaProperty(BeanPropertyWriter, ObjectNode, SerializerProvider) Since 2.3: new code should use the alternative `depositSchemaProperty` method
com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.depositSchemaProperty(BeanPropertyWriter, ObjectNode, SerializerProvider)
com.fasterxml.jackson.databind.ser.PropertyWriter.depositSchemaProperty(ObjectNode, SerializerProvider) Since 2.2
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.depositSchemaProperty(ObjectNode, SerializerProvider)
com.fasterxml.jackson.databind.ser.std.MapProperty.depositSchemaProperty(ObjectNode, SerializerProvider)
com.fasterxml.jackson.databind.ser.PropertyFilter.depositSchemaProperty(PropertyWriter, ObjectNode, SerializerProvider) Since 2.3: new code should use the alternative `depositSchemaProperty` method
com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.depositSchemaProperty(PropertyWriter, ObjectNode, SerializerProvider)
com.fasterxml.jackson.databind.ser.impl.PropertySerializerMap.findAndAddSerializer(Class<?>, SerializerProvider, BeanProperty) Since 2.3; use either `findAndAddPrimarySerializer` or `findAndAddSecondarySerializer`. To be removed from 2.4
com.fasterxml.jackson.databind.ser.impl.PropertySerializerMap.findAndAddSerializer(JavaType, SerializerProvider, BeanProperty) Since 2.3; use either `findAndAddPrimarySerializer` or `findAndAddSecondarySerializer`. To be removed from 2.4
com.fasterxml.jackson.databind.introspect.BasicBeanDescription.findCreatorPropertyNames() Since 2.4, use `BasicBeanDescription.findCreatorParameterNames()` instead.
com.fasterxml.jackson.databind.ser.FilterProvider.findFilter(Object) Since 2.3 deprecated because `BeanPropertyFilter` is deprecated;
com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider.findFilter(Object)
com.fasterxml.jackson.databind.AnnotationIntrospector.findFilterId(AnnotatedClass) Since 2.3: use the one that takes generic `Annotated`
com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector.findFilterId(AnnotatedClass) (since 2.3) Use `JacksonAnnotationIntrospector.findFilterId(Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findFilterId(AnnotatedClass)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.findNewName()
com.fasterxml.jackson.databind.DeserializationContext.findObjectId(Object, ObjectIdGenerator<?>)
com.fasterxml.jackson.databind.deser.DefaultDeserializationContext.findObjectId(Object, ObjectIdGenerator<?>)
com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.findProperty(String)
com.fasterxml.jackson.databind.AnnotationIntrospector.findSerializationSortAlphabetically(AnnotatedClass)
com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector.findSerializationSortAlphabetically(AnnotatedClass)
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findSerializationSortAlphabetically(AnnotatedClass)
com.fasterxml.jackson.databind.deser.BeanDeserializerBase.getBeanClass() Since 2.3, use `BeanDeserializerBase.handledType()` instead
com.fasterxml.jackson.databind.util.StdDateFormat.getBlueprintISO8601Format() Since 2.4 not to be used.
com.fasterxml.jackson.databind.util.StdDateFormat.getBlueprintRFC1123Format() Since 2.4 not to be used.
com.fasterxml.jackson.databind.util.StdDateFormat.getISO8601Format(TimeZone) Since 2.4; use variant that takes Locale
com.fasterxml.jackson.databind.ObjectWriter.getJsonFactory() Since 2.2, use `ObjectWriter.getFactory()` instead.
com.fasterxml.jackson.databind.ObjectReader.getJsonFactory() Since 2.1: Use `ObjectReader.getFactory()` instead
com.fasterxml.jackson.databind.ObjectMapper.getJsonFactory() Since 2.1: Use `ObjectMapper.getFactory()` instead
com.fasterxml.jackson.databind.util.StdDateFormat.getRFC1123Format(TimeZone) Since 2.4; use variant that takes Locale
com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.getSchema(SerializerProvider, Type)
com.fasterxml.jackson.databind.SerializerProvider.getSerializationView() Since 2.2, use `SerializerProvider.getActiveView()` instead.
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.getUnrecognizedPropertyName() Since 2.3, use `PropertyBindingException.getPropertyName()` instead.
com.fasterxml.jackson.databind.deser.std.StdDeserializer.getValueClass() Since 2.3 use `StdDeserializer.handledType()` instead

com.fasterxml.jackson.databind.SerializerProvider.handleContextualization(JsonSerializer<?>, BeanProperty)
Since 2.3 (and to be removed from 2.4); use `SerializerProvider.handlePrimaryContextualization(com.fasterxml.jackson.databind.JsonSerializer<?>, com.fasterxml.jackson.databind.BeanProperty)` or `SerializerProvider.handleSecondaryContextualization(com.fasterxml.jackson.databind.JsonSerializer<?>, com.fasterxml.jackson.databind.BeanProperty)` instead

com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.hasProperty(String)
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.hasSerializerFor(Class<?>)
com.fasterxml.jackson.databind.DeserializationContext.hasValueDeserializerFor(JavaType)
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.isRequired(AnnotationIntrospector) since 2.2, use `BeanPropertyWriter.isRequired()` instead.
com.fasterxml.jackson.databind.node.JsonNodeFactory.POJONode(Object) Since 2.3 Use `JsonNodeFactory.pojoNode(java.lang.Object)` instead.
com.fasterxml.jackson.databind.node.ContainerNode.POJONode(Object) Since 2.3 Use `ContainerNode.pojoNode(java.lang.Object)` instead.
com.fasterxml.jackson.databind.node.ObjectNode.put(String, JsonNode) Since 2.4 use either `ObjectNode.set(String,JsonNode)` or `ObjectNode.replace(String,JsonNode)`,
com.fasterxml.jackson.databind.node.ObjectNode.putAll(Map<String, ? extends JsonNode>) Since 2.4 use `ObjectNode.setAll(Map)`,
com.fasterxml.jackson.databind.node.ObjectNode.putAll(ObjectNode) Since 2.4 use `ObjectNode.setAll(ObjectNode)`,
com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.removeProperty(String)
com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.serializeAsField(Object, JsonGenerator, SerializerProvider, BeanPropertyWriter)
com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider.setDefaultFilter(BeanPropertyFilter) Since 2.3 should use `PropertyFilter` instead of `BeanPropertyFilter`
com.fasterxml.jackson.databind.jsontype.impl.TypeNameIdResolver.typeFromId(String)
com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase.typeFromId(String) Since 2.3, override `TypeIdResolverBase.typeFromId(DatabindContext, String)` instead to get access to contextual information
com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver.typeFromId(String)
com.fasterxml.jackson.databind.DeserializationContext.weirdNumberException(Class<?>, String)
com.fasterxml.jackson.databind.DeserializationContext.weirdStringException(Class<?>, String) Since 2.1 should use variant that takes value
com.fasterxml.jackson.databind.deser.SettableBeanProperty.withName(String)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.withName(String)
com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition.withName(String)
com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition.withName(String)
com.fasterxml.jackson.databind.ser.std.MapSerializer.withResolved(BeanProperty, JsonSerializer<?>, JsonSerializer<?>, HashSet<String>)

Deprecated Constructors
Constructor and Description
com.fasterxml.jackson.databind.BeanProperty.Std(String, JavaType, PropertyName, Annotations, AnnotatedMember, boolean)
com.fasterxml.jackson.databind.deser.std.ContainerDeserializerBase(Class<?>) Since 2.3 use one that takes `JavaType`
com.fasterxml.jackson.databind.deser.CreatorProperty(CreatorProperty, String)
com.fasterxml.jackson.databind.deser.CreatorProperty(String, JavaType, PropertyName, TypeDeserializer, Annotations, AnnotatedParameter, int, Object, boolean)
com.fasterxml.jackson.databind.ser.std.EnumSerializer(EnumValues) Since 2.1
com.fasterxml.jackson.databind.MappingIterator(JavaType, JsonParser, DeserializationContext, JsonDeserializer<?>) Since 2.1, to be removed
com.fasterxml.jackson.databind.introspect.ObjectIdInfo(PropertyName, Class<?>, Class<? extends ObjectIdGenerator<?>>)
com.fasterxml.jackson.databind.introspect.ObjectIdInfo(String, Class<?>, Class<? extends ObjectIdGenerator<?>>)
com.fasterxml.jackson.databind.deser.impl.ObjectIdReader(JavaType, PropertyName, ObjectIdGenerator<?>, JsonDeserializer<?>, SettableBeanProperty)
com.fasterxml.jackson.databind.deser.impl.ObjectIdReader(JavaType, String, ObjectIdGenerator<?>, JsonDeserializer<?>, SettableBeanProperty)
com.fasterxml.jackson.databind.deser.impl.ObjectIdValueProperty(ObjectIdReader)
com.fasterxml.jackson.databind.deser.impl.ObjectIdValueProperty(ObjectIdValueProperty, PropertyName)
com.fasterxml.jackson.databind.deser.impl.ObjectIdValueProperty(ObjectIdValueProperty, String)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder(String, AnnotationIntrospector, boolean)
com.fasterxml.jackson.databind.PropertyMetadata(Boolean, String)
com.fasterxml.jackson.databind.deser.impl.ReadableObjectId(Object)
com.fasterxml.jackson.databind.deser.SettableAnyProperty(BeanProperty, AnnotatedMethod, JavaType, JsonDeserializer
com.fasterxml.jackson.databind.deser.SettableAnyProperty(BeanProperty, Method, JavaType, JsonDeserializer
com.fasterxml.jackson.databind.deser.SettableBeanProperty(SettableBeanProperty, String)
com.fasterxml.jackson.databind.deser.SettableBeanProperty(String, JavaType, PropertyName, TypeDeserializer, Annotations)
com.fasterxml.jackson.databind.deser.SettableBeanProperty(String, JavaType, PropertyName, TypeDeserializer, Annotations, boolean)
com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition(AnnotatedMember)
com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition(AnnotatedMember, String)
com.fasterxml.jackson.databind.util.StdDateFormat(TimeZone) Since 2.4, use variant that also takes Locale
com.fasterxml.jackson.databind.util.TokenBuffer.Parser(TokenBuffer.Segment, ObjectCodec)
com.fasterxml.jackson.databind.util.TokenBuffer(ObjectCodec) since 2.3 preferred variant is one that takes `JsonParser` or additional boolean parameter.
com.fasterxml.jackson.databind.type.TypeBase(Class<?>, int, Object, Object) Since 2.2 use method that takes 'asStatic' argument
com.fasterxml.jackson.databind.deser.impl.ValueInjector(String, JavaType, Annotations, AnnotatedMember, Object)

Deprecated Annotation Type Elements
Annotation Type Element and Description
com.fasterxml.jackson.databind.annotation.JsonSerialize.include As of Jackson 2.0, this annotation has been replaced by `JsonInclude`
com.fasterxml.jackson.databind.jsonschema.JsonSerializableSchema.schemaItemDefinition (since 2.1) -- support will be dropped in future, since JSON-as-String is fundamentally bad way for customizing anything. No direct replacements offered.
com.fasterxml.jackson.databind.jsonschema.JsonSerializableSchema.schemaObjectPropertiesDefinition (since 2.1) -- support will be dropped in future, since JSON-as-String is fundamentally bad way for customizing anything. No direct replacements offered.