Package com.fasterxml.jackson.core
Class JsonParseException
- 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.JsonParseException
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
JsonEOFException
public class JsonParseException extends StreamReadException
Exception type for parsing problems, used when non-well-formed content (content that does not conform to JSON syntax as per specification) is encountered.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description JsonParseException(JsonParser p, java.lang.String msg)
Constructor that uses current parsing location as location, and sets processor (accessible viagetProcessor()
) to specified parser.JsonParseException(JsonParser p, java.lang.String msg, JsonLocation loc)
JsonParseException(JsonParser p, java.lang.String msg, JsonLocation loc, java.lang.Throwable root)
JsonParseException(JsonParser p, java.lang.String msg, java.lang.Throwable root)
JsonParseException(java.lang.String msg, JsonLocation loc)
Deprecated.JsonParseException(java.lang.String msg, JsonLocation loc, java.lang.Throwable root)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getMessage()
Overriding the getMessage() to include the request bodyJsonParser
getProcessor()
Method that allows accessing underlying processor that triggered this exception; typically eitherJsonParser
orJsonGenerator
for exceptions that originate from streaming API.RequestPayload
getRequestPayload()
Method that may be called to find payload that was being parsed, if one was specified for parser that threw this Exception.java.lang.String
getRequestPayloadAsString()
The method returns the String representation of the request payload if one was specified for parser that threw this Exception.JsonParseException
withParser(JsonParser p)
Fluent method that may be used to assign originatingJsonParser
, to be accessed usinggetProcessor()
.JsonParseException
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, getOriginalMessage, toString
-
-
-
-
Constructor Detail
-
JsonParseException
@Deprecated public JsonParseException(java.lang.String msg, JsonLocation loc)
Deprecated.
-
JsonParseException
@Deprecated public JsonParseException(java.lang.String msg, JsonLocation loc, java.lang.Throwable root)
Deprecated.
-
JsonParseException
public JsonParseException(JsonParser p, java.lang.String msg)
Constructor that uses current parsing location as location, and sets processor (accessible viagetProcessor()
) to specified parser.- Parameters:
p
- Parser in use when encountering issue reportedmsg
- Base exception message to use- Since:
- 2.7
-
JsonParseException
public JsonParseException(JsonParser p, java.lang.String msg, java.lang.Throwable root)
-
JsonParseException
public JsonParseException(JsonParser p, java.lang.String msg, JsonLocation loc)
-
JsonParseException
public JsonParseException(JsonParser p, java.lang.String msg, JsonLocation loc, java.lang.Throwable root)
-
-
Method Detail
-
withParser
public JsonParseException withParser(JsonParser p)
Fluent method that may be used to assign originatingJsonParser
, to be accessed usinggetProcessor()
.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
- Since:
- 2.7
-
withRequestPayload
public JsonParseException withRequestPayload(RequestPayload payload)
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:
payload
- Payload to assign to this exception- Returns:
- This exception instance to allow call chaining
- Since:
- 2.8
-
getProcessor
public JsonParser 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 classStreamReadException
- Returns:
- Originating processor, if available; null if not.
-
getRequestPayload
public RequestPayload getRequestPayload()
Description copied from class:StreamReadException
Method that may be called to find payload that was being parsed, if one was specified for parser that threw this Exception.- Overrides:
getRequestPayload
in classStreamReadException
- Returns:
- request body, if payload was specified; `null` otherwise
-
getRequestPayloadAsString
public java.lang.String getRequestPayloadAsString()
Description copied from class:StreamReadException
The method returns the String representation of the request payload if one was specified for parser that threw this Exception.- Overrides:
getRequestPayloadAsString
in classStreamReadException
- Returns:
- request body as String, if payload was specified; `null` otherwise
-
getMessage
public java.lang.String getMessage()
Description copied from class:StreamReadException
Overriding the getMessage() to include the request body- Overrides:
getMessage
in classStreamReadException
- Returns:
- Original
message
preceded by optional prefix and followed by location information, message and location information separated by a linefeed
-
-