Class JsonMappingException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.io.IOException
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.core.JacksonException
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.core.JsonProcessingException
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.DatabindException
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.JsonMappingException
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
InvalidDefinitionException
,MismatchedInputException
,UnresolvedForwardReference
,ValueInstantiationException
Checked exception used to signal fatal problems with mapping of
content, distinct from low-level I/O problems (signaled using
simple
IOException
s) or data encoding/decoding
problems (signaled with StreamReadException
,
StreamWriteException
).
One additional feature is the ability to denote relevant path of references (during serialization/deserialization) to help in troubleshooting.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Simple bean class used to contain references. -
Field Summary
Modifier and TypeFieldDescriptionprotected LinkedList<JsonMappingException.Reference>
Path through which problem that triggering throwing of this exception was reached.protected Closeable
Underlying processor (JsonParser
orJsonGenerator
), if known.Fields inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.core.JsonProcessingException
_location
-
Constructor Summary
ConstructorDescriptionJsonMappingException
(Closeable processor, String msg) JsonMappingException
(Closeable processor, String msg, JsonLocation loc) JsonMappingException
(Closeable processor, String msg, Throwable problem) Deprecated.JsonMappingException
(String msg, JsonLocation loc) Deprecated.Since 2.7 Use variant that takesJsonParser
insteadJsonMappingException
(String msg, JsonLocation loc, Throwable rootCause) Deprecated.Since 2.7 Use variant that takesJsonParser
insteadJsonMappingException
(String msg, Throwable rootCause) Deprecated.Since 2.7 Use variant that takesJsonParser
instead -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected String
static JsonMappingException
from
(JsonGenerator g, String msg) static JsonMappingException
from
(JsonGenerator g, String msg, Throwable problem) static JsonMappingException
from
(JsonParser p, String msg) static JsonMappingException
from
(JsonParser p, String msg, Throwable problem) static JsonMappingException
from
(DeserializationContext ctxt, String msg) static JsonMappingException
from
(DeserializationContext ctxt, String msg, Throwable t) static JsonMappingException
from
(SerializerProvider ctxt, String msg) static JsonMappingException
from
(SerializerProvider ctxt, String msg, Throwable problem) static JsonMappingException
Factory method used when "upgrading" anIOException
intoJsonMappingException
: usually only needed to comply with a signature.Method is overridden so that we can properly inject description of problem path, if such is defined.getPath()
Method for accessing full structural path within type hierarchy down to problematic property.Method for accessing description of path that lead to the problem that triggered this exceptionMethod that allows accessing underlying processor that triggered this exception; typically eitherJsonParser
orJsonGenerator
for exceptions that originate from streaming API.void
void
prependPath
(Object referrer, int index) Method called to prepend a reference information in front of current pathvoid
prependPath
(Object referrer, String fieldName) Method called to prepend a reference information in front of current pathtoString()
static JsonMappingException
Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information.static JsonMappingException
wrapWithPath
(Throwable src, Object refFrom, int index) Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information.static JsonMappingException
wrapWithPath
(Throwable src, Object refFrom, String refFieldName) Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information.Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.core.JsonProcessingException
clearLocation, getLocation, getMessageSuffix, getOriginalMessage
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
-
Field Details
-
_path
Path through which problem that triggering throwing of this exception was reached. -
_processor
Underlying processor (JsonParser
orJsonGenerator
), if known.NOTE: typically not serializable hence
transient
- Since:
- 2.7
-
-
Constructor Details
-
JsonMappingException
Deprecated.Since 2.7 Use variant that takesJsonParser
instead -
JsonMappingException
Deprecated.Since 2.7 Use variant that takesJsonParser
instead -
JsonMappingException
Deprecated.Since 2.7 Use variant that takesJsonParser
instead -
JsonMappingException
Deprecated.Since 2.7 Use variant that takesJsonParser
instead -
JsonMappingException
- Since:
- 2.7
-
JsonMappingException
- Since:
- 2.7
-
JsonMappingException
- Since:
- 2.7
-
-
Method Details
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
from
- Since:
- 2.7
-
fromUnexpectedIOE
Factory method used when "upgrading" anIOException
intoJsonMappingException
: usually only needed to comply with a signature.NOTE: since 2.9 should usually NOT be used on input-side (deserialization) exceptions; instead use method(s) of
InputMismatchException
- Since:
- 2.1
-
wrapWithPath
Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information. This version of method is called when the reference is through a non-indexed object, such as a Map or POJO/bean. -
wrapWithPath
Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information. This version of method is called when the reference is through an index, which happens with arrays and Collections. -
wrapWithPath
Method that can be called to either create a new JsonMappingException (if underlying exception is not a JsonMappingException), or augment given exception with given path/reference information. -
withCause
- Since:
- 2.13
-
getPath
Method for accessing full structural path within type hierarchy down to problematic property. -
getPathReference
Method for accessing description of path that lead to the problem that triggered this exception -
getPathReference
-
prependPath
Method called to prepend a reference information in front of current path- Specified by:
prependPath
in classDatabindException
-
prependPath
Method called to prepend a reference information in front of current path- Specified by:
prependPath
in classDatabindException
-
prependPath
-
getProcessor
Description copied from class:JsonProcessingException
Method that allows accessing underlying processor that triggered this exception; typically eitherJsonParser
orJsonGenerator
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.- Overrides:
getProcessor
in classJsonProcessingException
- Returns:
- Originating processor, if available; null if not.
-
getLocalizedMessage
- Overrides:
getLocalizedMessage
in classThrowable
-
getMessage
Method is overridden so that we can properly inject description of problem path, if such is defined.- Overrides:
getMessage
in classJsonProcessingException
- Returns:
- Original
message
preceded by optional prefix and followed by location information, message and location information separated by a linefeed
-
_buildMessage
-
toString
- Overrides:
toString
in classJsonProcessingException
-
_appendPathDesc
-
JsonParser
instead