# Deprecated API

## Contents

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

Deprecated Interfaces
Interface and Description
com.fasterxml.jackson.databind.util.Provider

Deprecated Classes
Class and Description
com.fasterxml.jackson.databind.AnnotationIntrospector.Pair Starting with 2.1, use `AnnotationIntrospectorPair` instead.
com.fasterxml.jackson.databind.jsonschema.JsonSchema Since 2.2, we recommend use of external JSON Schema generator module</module>

Deprecated Methods
Method and Description
com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.addCreatorProperty(BeanPropertyDefinition) since 2.1, override `BeanDeserializerBuilder.addCreatorProperty(SettableBeanProperty)` instead.
com.fasterxml.jackson.databind.deser.std.NumberDeserializers.all() Since 2.2 -- use `NumberDeserializers.find(java.lang.Class<?>, java.lang.String)` instead.
com.fasterxml.jackson.databind.deser.std.JdkDeserializers.all() Since 2.2 -- use `JdkDeserializers.find(java.lang.Class<?>, java.lang.String)` instead.
com.fasterxml.jackson.databind.deser.std.JacksonDeserializers.all() Since 2.2 -- use `JacksonDeserializers.find(java.lang.Class<?>)` instead.
com.fasterxml.jackson.databind.deser.std.DateDeserializers.all() Since 2.2 -- use `DateDeserializers.find(java.lang.Class<?>, java.lang.String)` instead.
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.buildCollectionSerializer(SerializationConfig, CollectionType, BeanDescription, BeanProperty, boolean, TypeSerializer, JsonSerializer Since 2.1
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.buildContainerSerializer(SerializerProvider, JavaType, BeanDescription, BeanProperty, boolean) Since 2.1 (removed 'property' argument)
com.fasterxml.jackson.databind.jsontype.impl.StdSubtypeResolver.collectAndResolveSubtypes(AnnotatedMember, MapperConfig<?>, AnnotationIntrospector) Since 2.1
com.fasterxml.jackson.databind.jsontype.SubtypeResolver.collectAndResolveSubtypes(AnnotatedMember, MapperConfig<?>, AnnotationIntrospector) Since 2.1: use variant that takes in property type.
com.fasterxml.jackson.databind.ser.std.StdContainerSerializers.collectionSerializer(JavaType, boolean, TypeSerializer, BeanProperty, JsonSerializer Since 2.1; use variant that does not take 'property' argument
com.fasterxml.jackson.databind.ser.std.EnumSerializer.construct(Class<Enum<?>>, SerializationConfig, BeanDescription) Since 2.1 use the variant that takes in `format` argument.
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.constructBeanSerializer(SerializerProvider, BeanDescription, BeanProperty) Since 2.1, do not pass 'property' argument
com.fasterxml.jackson.databind.deser.std.StdKeyDeserializers.constructStringKeyDeserializer(DeserializationConfig, JavaType) Since 2.2, just call `StdKeyDeserializer.StringKD` directly
com.fasterxml.jackson.databind.ser.SerializerFactory.createKeySerializer(SerializationConfig, JavaType) Since 2.2, use one that takes additional `defaultImpl` parameter
com.fasterxml.jackson.databind.ser.SerializerFactory.createSerializer(SerializerProvider, JavaType, BeanProperty) Since 2.1: need to use the new variant without 'property' argument (since one won't be passed)
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.findBeanSerializer(SerializerProvider, JavaType, BeanDescription, BeanProperty) Since 2.1 (use variant without 'property' argument).
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedField) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedField)
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedMethod) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedMethod)
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedParameter) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedParameter)
com.fasterxml.jackson.databind.AnnotationIntrospector.findFormat(AnnotatedMember) Since 2.1, use `AnnotationIntrospector.findFormat(Annotated)` instead.
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.findPropertyTypeSerializer(JavaType, SerializationConfig, AnnotatedMember, BeanProperty) Since 2.1
com.fasterxml.jackson.databind.AnnotationIntrospector.findSerializationName(AnnotatedField) Since 2.1 should use `AnnotationIntrospector.findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findSerializationName(AnnotatedField)
com.fasterxml.jackson.databind.AnnotationIntrospector.findSerializationName(AnnotatedMethod) Since 2.1 should use `AnnotationIntrospector.findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findSerializationName(AnnotatedMethod)
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.SerializerProvider.getSerializationView() Since 2.2, use `SerializerProvider.getActiveView()` instead.
com.fasterxml.jackson.databind.ser.std.StdContainerSerializers.indexedListSerializer(JavaType, boolean, TypeSerializer, BeanProperty, JsonSerializer Since 2.1; use variant that does not take 'property' argument
com.fasterxml.jackson.databind.AnnotationIntrospector.isHandled(Annotation) Not used since 2.0; deprecated sicne 2.1
com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector.isHandled(Annotation)
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.isHandled(Annotation)
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.isRequired(AnnotationIntrospector) since 2.2, use `BeanPropertyWriter.isRequired()` instead.
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor.optionalProperty(String)
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor.Base.optionalProperty(String)
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor.property(String)
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor.Base.property(String)
com.fasterxml.jackson.databind.introspect.POJOPropertyBuilder.removeNonVisible() Since 2.2, use variant that takes boolean argument
com.fasterxml.jackson.databind.deser.impl.CreatorCollector.setDefaultConstructor(AnnotatedConstructor) since 2.1, use `CreatorCollector.setDefaultCreator(com.fasterxml.jackson.databind.introspect.AnnotatedWithParams)` instead.
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.usesStaticTyping(SerializationConfig, BeanDescription, TypeSerializer, BeanProperty) Since 2.1: use method without 'property'
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.std.EnumMapDeserializer.withResolved(JsonDeserializer<?>, JsonDeserializer<?>) Since 2.1.3 -- use variant that takes one more argument.

Deprecated Constructors
Constructor and Description
com.fasterxml.jackson.databind.AnnotationIntrospector.Pair(AnnotationIntrospector, AnnotationIntrospector)
com.fasterxml.jackson.databind.deser.CreatorProperty(String, JavaType, TypeDeserializer, Annotations, AnnotatedParameter, int, Object) Since 2.2: use the method that takes `isRequired` property
com.fasterxml.jackson.databind.deser.std.EnumMapDeserializer(JavaType, JsonDeserializer<?>, JsonDeserializer<?>) Since 2.1.3 -- use variant that takes one more argument.
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.deser.impl.ObjectIdValueProperty(ObjectIdReader)
com.fasterxml.jackson.databind.deser.SettableBeanProperty(String, JavaType, PropertyName, TypeDeserializer, Annotations)
com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition(AnnotatedMember)
com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition(AnnotatedMember, String)
com.fasterxml.jackson.databind.type.TypeBase(Class<?>, int, Object, Object) Since 2.2 use method that takes 'asStatic' argument

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.