Package com.fasterxml.jackson.core

# Class JsonGenerationException

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.StreamWriteException
com.fasterxml.jackson.core.JsonGenerationException

All Implemented Interfaces:
  `Serializable`

public class JsonGenerationException extends StreamWriteException
Exception type for exceptions during JSON writing, such as trying to output content in wrong context (non-matching end-array or end-object, for example).

See Also:
  - Serialized Form

## Field Summary

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

`_processor`

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

`_location`

## Constructor Summary

Constructors
Constructor
Description
`JsonGenerationException(String msg)`
Deprecated.
`JsonGenerationException(String msg, JsonGenerator g)`
`JsonGenerationException(String msg, Throwable rootCause)`
Deprecated.
`JsonGenerationException(String msg, Throwable rootCause, JsonGenerator g)`
`JsonGenerationException(Throwable rootCause)`
Deprecated.
`JsonGenerationException(Throwable rootCause, JsonGenerator g)`

## Method Summary

Modifier and Type
Method
Description
`JsonGenerator`
`getProcessor()`
Method that allows accessing underlying processor that triggered this exception; typically either `JsonParser` or `JsonGenerator` for exceptions that originate from streaming API.
`JsonGenerationException`
`withGenerator(JsonGenerator g)`
Fluent method that may be used to assign originating `JsonGenerator`, to be accessed using `getProcessor()`.

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

`clearLocation, getLocation, getMessage, 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

### JsonGenerationException

@Deprecated public JsonGenerationException(Throwable rootCause)
Deprecated.

### JsonGenerationException

@Deprecated public JsonGenerationException(String msg)
Deprecated.

### JsonGenerationException

@Deprecated public JsonGenerationException(String msg, Throwable rootCause)
Deprecated.

### JsonGenerationException

public JsonGenerationException(Throwable rootCause, JsonGenerator g)

### JsonGenerationException

public JsonGenerationException(String msg, JsonGenerator g)

### JsonGenerationException

public JsonGenerationException(String msg, Throwable rootCause, JsonGenerator g)

## Method Details

### withGenerator

public JsonGenerationException withGenerator(JsonGenerator g)
Fluent method that may be used to assign originating `JsonGenerator`, to be accessed using `getProcessor()`.

Specified by:
  `withGenerator` in class `StreamWriteException`
Parameters:
  `g` - Generator to assign
Returns:
  This exception instance (to allow call chaining)
Since:
  2.7

### getProcessor

public JsonGenerator 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 `StreamWriteException`
Returns:
  Originating processor, if available; null if not.