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 and 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, JsonLocation loc)` Deprecated.
    `JsonParseException(String msg, JsonLocation loc, Throwable root)` Deprecated.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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 Detail

    - #### 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)

  - ### Method Detail

    - #### 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

Copyright © 2008–2021 FasterXML. All rights reserved.