Package com.fasterxml.jackson.core.exc
Class StreamReadException
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
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
InputCoercionException
,JsonParseException
Intermediate base class for all read-side streaming processing problems, including
parsing and input value coercion problems.
Added in 2.10 to eventually replace JsonParseException
.
- Since:
- 2.10
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected JsonParser
protected RequestPayload
Optional payload that can be assigned to pass along for error reporting or handling purposes.Fields inherited from class com.fasterxml.jackson.core.JsonProcessingException
_location
-
Constructor Summary
ModifierConstructorDescriptionprotected
StreamReadException
(JsonParser p, String msg) protected
StreamReadException
(JsonParser p, String msg, JsonLocation loc) protected
StreamReadException
(JsonParser p, String msg, JsonLocation loc, Throwable rootCause) protected
StreamReadException
(JsonParser p, String msg, Throwable root) protected
protected
StreamReadException
(String msg, JsonLocation loc, Throwable rootCause) -
Method Summary
Modifier and TypeMethodDescriptionOverriding the getMessage() to include the request bodyMethod that allows accessing underlying processor that triggered this exception; typically eitherJsonParser
orJsonGenerator
for exceptions that originate from streaming API.Method that may be called to find payload that was being parsed, if one was specified for parser that threw this Exception.The method returns the String representation of the request payload if one was specified for parser that threw this Exception.abstract StreamReadException
Fluent method that may be used to assign originatingJsonParser
, to be accessed usinggetProcessor()
.abstract StreamReadException
withRequestPayload
(RequestPayload payload) 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.JsonProcessingException
clearLocation, getLocation, getMessageSuffix, getOriginalMessage, toString
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
-
Field Details
-
_processor
-
_requestPayload
Optional payload that can be assigned to pass along for error reporting or handling purposes. Core streaming parser implementations DO NOT initialize this; it is up to using applications and frameworks to populate it.
-
-
Constructor Details
-
StreamReadException
-
StreamReadException
-
StreamReadException
-
StreamReadException
-
StreamReadException
-
StreamReadException
-
-
Method Details
-
withParser
Fluent method that may be used to assign originatingJsonParser
, to be accessed usinggetProcessor()
.NOTE: `this` instance is modified and no new instance is constructed.
- Parameters:
p
- Parser instance to assign to this exception- Returns:
- This exception instance to allow call chaining
-
withRequestPayload
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.
- Parameters:
payload
- Payload to assign to this exception- Returns:
- This exception instance to allow call chaining
-
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.
-
getRequestPayload
Method that may be called to find payload that was being parsed, if one was specified for parser that threw this Exception.- Returns:
- request body, if payload was specified; `null` otherwise
-
getRequestPayloadAsString
The method returns the String representation of the request payload if one was specified for parser that threw this Exception.- Returns:
- request body as String, if payload was specified; `null` otherwise
-
getMessage
Overriding the getMessage() to include the request body- Overrides:
getMessage
in classJsonProcessingException
- Returns:
- Original
message
preceded by optional prefix and followed by location information, message and location information separated by a linefeed
-