Package org.springframework.web
Class ErrorResponseException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
org.springframework.core.NestedRuntimeException
org.springframework.web.ErrorResponseException
- All Implemented Interfaces:
Serializable
,ErrorResponse
- Direct Known Subclasses:
ResponseStatusException
RuntimeException
that implements ErrorResponse
to expose
an HTTP status, response headers, and a body formatted as an RFC 7808
ProblemDetail
.
The exception can be used as is, or it can be extended as a more specific
exception that populates the type
or
detail
fields, or potentially adds
other non-standard properties.
- Since:
- 6.0
- Author:
- Rossen Stoyanchev
- See Also:
-
Constructor Summary
ConstructorDescriptionErrorResponseException
(HttpStatusCode status) Constructor with aHttpStatusCode
.ErrorResponseException
(HttpStatusCode status, Throwable cause) Constructor with aHttpStatusCode
and an optional cause.ErrorResponseException
(HttpStatusCode status, ProblemDetail body, Throwable cause) Constructor with a givenProblemDetail
instance, possibly a subclass ofProblemDetail
with extended fields. -
Method Summary
Modifier and TypeMethodDescriptionfinal ProblemDetail
getBody()
Return the body for the response.Return headers to use for the response.Return the HTTP status code to use for the response.void
Set thedetail
field of the response body.void
setInstance
(URI instance) Set theinstance
field of the response body.void
Set thetitle
field of the response body.void
Set thetype
field of the response body.Methods inherited from class org.springframework.core.NestedRuntimeException
contains, getMostSpecificCause, getRootCause
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
ErrorResponseException
Constructor with aHttpStatusCode
. -
ErrorResponseException
Constructor with aHttpStatusCode
and an optional cause. -
ErrorResponseException
Constructor with a givenProblemDetail
instance, possibly a subclass ofProblemDetail
with extended fields.
-
-
Method Details
-
getStatusCode
Description copied from interface:ErrorResponse
Return the HTTP status code to use for the response.- Specified by:
getStatusCode
in interfaceErrorResponse
-
getHeaders
Description copied from interface:ErrorResponse
Return headers to use for the response.- Specified by:
getHeaders
in interfaceErrorResponse
-
setType
Set thetype
field of the response body.- Parameters:
type
- the problem type
-
setTitle
Set thetitle
field of the response body.- Parameters:
title
- the problem title
-
setDetail
Set thedetail
field of the response body.- Parameters:
detail
- the problem detail
-
setInstance
Set theinstance
field of the response body.- Parameters:
instance
- the problem instance
-
getBody
Return the body for the response. To customize the body content, use:By default, the status field of
ProblemDetail
is initialized from the status provided to the constructor, which in turn may also initialize the title field from the status reason phrase, if the status is well-known. The instance field, if not set, is initialized from the request path when aProblemDetail
is returned from an@ExceptionHandler
method.- Specified by:
getBody
in interfaceErrorResponse
-
getMessage
- Overrides:
getMessage
in classThrowable
-