Class JsonMappingException.Reference

java.lang.Object
com.fasterxml.jackson.databind.JsonMappingException.Reference
All Implemented Interfaces:
Serializable
Enclosing class:
JsonMappingException

public static class JsonMappingException.Reference extends Object implements Serializable
Simple bean class used to contain references. References can be added to indicate execution/reference path that lead to the problem that caused this exception to be thrown.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • _from

      protected transient Object _from
    • _fieldName

      protected String _fieldName
      Name of field (for beans) or key (for Maps) that is part of the reference. May be null for Collection types (which generally have _index defined), or when resolving Map classes without (yet) having an instance to operate on.
    • _index

      protected int _index
      Index within a Collection instance that contained the reference; used if index is relevant and available. If either not applicable, or not available, -1 is used to denote "not known" (or not relevant).
    • _desc

      protected String _desc
      Lazily-constructed description of this instance; needed mostly to allow JDK serialization to work in case where _from is non-serializable (and has to be dropped) but we still want to pass actual description along.
      Since:
      2.8
  • Constructor Details

    • Reference

      protected Reference()
      Default constructor for deserialization/sub-classing purposes
    • Reference

      public Reference(Object from)
    • Reference

      public Reference(Object from, String fieldName)
    • Reference

      public Reference(Object from, int index)
  • Method Details

    • setFieldName

      void setFieldName(String n)
    • setIndex

      void setIndex(int ix)
    • setDescription

      void setDescription(String d)
    • getFrom

      public Object getFrom()
      Object through which reference was resolved. Can be either actual instance (usually the case for serialization), or Class (usually the case for deserialization).

      Note that this value must be `transient` to allow serializability (as often such Object is NOT serializable; or, in case of `Class`, may not available at the point of deserialization). As such will return `null` if instance has been passed using JDK serialization.

    • getFieldName

      public String getFieldName()
    • getIndex

      public int getIndex()
    • getDescription

      public String getDescription()
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • writeReplace

      Object writeReplace()
      May need some cleaning here, given that `from` may or may not be serializable. since 2.8