Class JsonProcessingException

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    DatabindException, StreamReadException, StreamWriteException

    public class JsonProcessingException
    extends JacksonException
    Intermediate base class for all problems encountered when processing (parsing, generating) JSON content that are not pure I/O problems. Regular IOExceptions will be passed through as is. Sub-class of IOException for convenience.

    Since Jackson 2.12 extends intermediate JacksonException type instead of directly extending IOException.

    See Also:
    Serialized Form
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clearLocation()
      Method that allows to remove context information from this exception's message.
      JsonLocation getLocation()
      Accessor for location information related to position within input or output (depending on operation), if available; if not available may return null.
      java.lang.String getMessage()
      Default implementation overridden so that we can add location information
      java.lang.String getOriginalMessage()
      Method that allows accessing the original "message" argument, without additional decorations (like location information) that overridden getMessage() adds.
      java.lang.Object getProcessor()
      Method that allows accessing underlying processor that triggered this exception; typically either JsonParser or JsonGenerator for exceptions that originate from streaming API.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Method Detail

      • getLocation

        public JsonLocation getLocation()
        Description copied from class: JacksonException
        Accessor for location information related to position within input or output (depending on operation), if available; if not available may return null.

        Accuracy of location information depends on backend (format) as well as (in some cases) operation being performed.

        Specified by:
        getLocation in class JacksonException
        Returns:
        Location in input or output that triggered the problem reported, if available; null otherwise.
      • clearLocation

        public void clearLocation()
        Method that allows to remove context information from this exception's message. Useful when you are parsing security-sensitive data and don't want original data excerpts to be present in Jackson parser error messages.
        Since:
        2.9
      • getOriginalMessage

        public java.lang.String getOriginalMessage()
        Method that allows accessing the original "message" argument, without additional decorations (like location information) that overridden getMessage() adds.
        Specified by:
        getOriginalMessage in class JacksonException
        Returns:
        Original message passed in constructor
        Since:
        2.1
      • getProcessor

        public java.lang.Object getProcessor()
        Method that allows accessing underlying processor that triggered this exception; typically either JsonParser or JsonGenerator for exceptions that originate from streaming API. Note that it is possible that `null` may be returned if code throwing exception either has no access to processor; or has not been retrofitted to set it; this means that caller needs to take care to check for nulls. Subtypes override this method with co-variant return type, for more type-safe access.
        Specified by:
        getProcessor in class JacksonException
        Returns:
        Originating processor, if available; null if not.
        Since:
        2.7
      • getMessage

        public java.lang.String getMessage()
        Default implementation overridden so that we can add location information
        Overrides:
        getMessage in class java.lang.Throwable
        Returns:
        Original message preceded by optional prefix and followed by location information, message and location information separated by a linefeed
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Throwable