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:
  `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

## Field Summary

### Fields inherited from class com.fasterxml.jackson.core.exc.StreamReadException

`_processor, _requestPayload`

### Fields inherited from class com.fasterxml.jackson.core.JsonProcessingException

`_location`

## Constructor Summary

Constructors
Constructor
Description
`JsonParseException(JsonParser p, String msg)`
Constructor that uses current parsing location as location, and sets processor (accessible via `getProcessor()`) to specified parser.
`JsonParseException(JsonParser p, String msg, JsonLocation loc)`
`JsonParseException(JsonParser p, String msg, JsonLocation loc, Throwable root)`
`JsonParseException(JsonParser p, String msg, Throwable root)`
`JsonParseException(String msg)`
`JsonParseException(String msg, JsonLocation loc)`
Deprecated.
`JsonParseException(String msg, JsonLocation loc, Throwable root)`
Deprecated.

## Method Summary

Modifier and Type
Method
Description
`String`
`getMessage()`
Overriding the getMessage() to include the request body
`JsonParser`
`getProcessor()`
Method that allows accessing underlying processor that triggered this exception; typically either `JsonParser` or `JsonGenerator` 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.
`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 originating `JsonParser`, to be accessed using `getProcessor()`.
`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, getMessageSuffix, getOriginalMessage, toString`

### Methods inherited from class java.lang.Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### JsonParseException

@Deprecated public JsonParseException(String msg, JsonLocation loc)
Deprecated.

### JsonParseException

@Deprecated public JsonParseException(String msg, JsonLocation loc, Throwable root)
Deprecated.

### JsonParseException

public JsonParseException(JsonParser p, String msg)
Constructor that uses current parsing location as location, and sets processor (accessible via `getProcessor()`) to specified parser.

Parameters:
  `p` - Parser in use when encountering issue reported
  `msg` - Base exception message to use
Since:
  2.7

### JsonParseException

public JsonParseException(JsonParser p, String msg, Throwable root)

### JsonParseException

public JsonParseException(JsonParser p, String msg, JsonLocation loc)

### JsonParseException

public JsonParseException(JsonParser p, String msg, JsonLocation loc, Throwable root)

### JsonParseException

public JsonParseException(String msg)

## Method Details

### withParser

public JsonParseException withParser(JsonParser p)
Fluent method that may be used to assign originating `JsonParser`, to be accessed using `getProcessor()`.

NOTE: `this` instance is modified and no new instance is constructed.

Specified by:
  `withParser` in class `StreamReadException`
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 class `StreamReadException`
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 either `JsonParser` or `JsonGenerator` 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 class `StreamReadException`
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 class `StreamReadException`
Returns:
  request body, if payload was specified; `null` otherwise

### getRequestPayloadAsString

public 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 class `StreamReadException`
Returns:
  request body as String, if payload was specified; `null` otherwise

### getMessage

public String getMessage()
Description copied from class: `StreamReadException`
Overriding the getMessage() to include the request body

Overrides:
  `getMessage` in class `StreamReadException`
Returns:
  Original `message` preceded by optional prefix and followed by location information, message and location information separated by a linefeed