Class InputCoercionException

  • All Implemented Interfaces:
    java.io.Serializable

    public class InputCoercionException
    extends StreamReadException
    Exception type for read-side problems that are not direct decoding ("parsing") problems (those would be reported as JsonParseExceptions), 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 Detail

      • InputCoercionException

        public InputCoercionException​(JsonParser p,
                                      java.lang.String msg,
                                      JsonToken inputType,
                                      java.lang.Class<?> targetType)
        Constructor that uses current parsing location as location, and sets processor (accessible via StreamReadException.getProcessor()) to specified parser.
        Parameters:
        p - Parser in use at the point where failure occurred
        msg - Exception mesage to use
        inputType - Shape of input that failed to coerce
        targetType - Target type of failed coercion
    • Method Detail

      • 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 class StreamReadException
        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
      • getTargetType

        public java.lang.Class<?> getTargetType()
        Accessor for getting information about target type (in form of Java Class) for which coercion failed.
        Returns:
        Target type of failed conversion