Package com.fasterxml.jackson.core.exc
Class InputCoercionException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.io.IOException
-
- com.fasterxml.jackson.core.JacksonException
-
- com.fasterxml.jackson.core.JsonProcessingException
-
- com.fasterxml.jackson.core.exc.StreamReadException
-
- com.fasterxml.jackson.core.exc.InputCoercionException
-
- All Implemented Interfaces:
Serializable
public class InputCoercionException extends StreamReadException
Exception type for read-side problems that are not direct decoding ("parsing") problems (those would be reported asJsonParseException
s), but rather result from failed attempts to convert specific Java value out of valid but incompatible input value. One example is numeric coercions where target number type's range does not allow mapping of too large/too small input value.- Since:
- 2.10
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InputCoercionException(JsonParser p, String msg, JsonToken inputType, Class<?> targetType)
Constructor that uses current parsing location as location, and sets processor (accessible viaStreamReadException.getProcessor()
) to specified parser.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JsonToken
getInputType()
Accessor for getting information about input type (in form of token, giving "shape" of input) for which coercion failed.Class<?>
getTargetType()
Accessor for getting information about target type (in form of JavaClass
) for which coercion failed.InputCoercionException
withParser(JsonParser p)
Fluent method that may be used to assign originatingJsonParser
, to be accessed usingStreamReadException.getProcessor()
.InputCoercionException
withRequestPayload(RequestPayload p)
Fluent method that may be used to assign payload to this exception, to let recipient access it for diagnostics purposes.-
Methods inherited from class com.fasterxml.jackson.core.exc.StreamReadException
getMessage, getProcessor, getRequestPayload, getRequestPayloadAsString
-
Methods inherited from class com.fasterxml.jackson.core.JsonProcessingException
clearLocation, getLocation, getOriginalMessage, toString
-
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
-
-
-
-
Constructor Detail
-
InputCoercionException
public InputCoercionException(JsonParser p, String msg, JsonToken inputType, Class<?> targetType)
Constructor that uses current parsing location as location, and sets processor (accessible viaStreamReadException.getProcessor()
) to specified parser.- Parameters:
p
- Parser in use at the point where failure occurredmsg
- Exception mesage to useinputType
- Shape of input that failed to coercetargetType
- Target type of failed coercion
-
-
Method Detail
-
withParser
public InputCoercionException withParser(JsonParser p)
Fluent method that may be used to assign originatingJsonParser
, to be accessed usingStreamReadException.getProcessor()
.NOTE: `this` instance is modified and no new instance is constructed.
- Specified by:
withParser
in classStreamReadException
- Parameters:
p
- Parser instance to assign to this exception- Returns:
- This exception instance to allow call chaining
-
withRequestPayload
public InputCoercionException withRequestPayload(RequestPayload p)
Description copied from class:StreamReadException
Fluent method that may be used to assign payload to this exception, to let recipient access it for diagnostics purposes.NOTE: `this` instance is modified and no new instance is constructed.
- Specified by:
withRequestPayload
in classStreamReadException
- Parameters:
p
- Payload to assign to this exception- Returns:
- This exception instance to allow call chaining
-
getInputType
public JsonToken getInputType()
Accessor for getting information about input type (in form of token, giving "shape" of input) for which coercion failed.- Returns:
- "Shape" of input for which coercion failed, as
JsonToken
-
-