Package org.springframework.web
Class HttpMediaTypeException
java.lang.Object
java.lang.Throwable
java.lang.Exception
jakarta.servlet.ServletException
org.springframework.web.HttpMediaTypeException
- All Implemented Interfaces:
Serializable
,ErrorResponse
- Direct Known Subclasses:
HttpMediaTypeNotAcceptableException
,HttpMediaTypeNotSupportedException
Abstract base for exceptions related to media types. Adds a list of supported
MediaTypes
.- Since:
- 3.0
- Author:
- Arjen Poutsma
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.web.ErrorResponse
ErrorResponse.Builder
-
Constructor Summary
ModifierConstructorDescriptionprotected
HttpMediaTypeException
(String message) Deprecated.as of 6.0protected
HttpMediaTypeException
(String message, List<MediaType> supportedMediaTypes) Deprecated.as of 6.0protected
HttpMediaTypeException
(String message, List<MediaType> supportedMediaTypes, String messageDetailCode, Object[] messageDetailArguments) Create a new HttpMediaTypeException with a list of supported media types. -
Method Summary
Modifier and TypeMethodDescriptiongetBody()
Return the body for the response, formatted as an RFC 9457ProblemDetail
whosestatus
should match the response status.Object[]
Return arguments to use along with amessage code
to resolve the problem "detail" for this exception through aMessageSource
.Return a code to use to resolve the problem "detail" for this exception through aMessageSource
.Return the list of supported media types.Methods inherited from class jakarta.servlet.ServletException
getRootCause
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.springframework.web.ErrorResponse
getDetailMessageArguments, getHeaders, getStatusCode, getTitleMessageCode, getTypeMessageCode, updateAndGetBody
-
Constructor Details
-
HttpMediaTypeException
Deprecated.as of 6.0Create a new HttpMediaTypeException.- Parameters:
message
- the exception message
-
HttpMediaTypeException
Deprecated.as of 6.0Create a new HttpMediaTypeException with a list of supported media types.- Parameters:
supportedMediaTypes
- the list of supported media types
-
HttpMediaTypeException
protected HttpMediaTypeException(@Nullable String message, List<MediaType> supportedMediaTypes, @Nullable String messageDetailCode, @Nullable Object[] messageDetailArguments) Create a new HttpMediaTypeException with a list of supported media types.- Parameters:
supportedMediaTypes
- the list of supported media typesmessageDetailCode
- the code to use to resolve the problem "detail" through aMessageSource
messageDetailArguments
- the arguments to make available when resolving the problem "detail" through aMessageSource
- Since:
- 6.0
-
-
Method Details
-
getSupportedMediaTypes
Return the list of supported media types. -
getBody
Description copied from interface:ErrorResponse
Return the body for the response, formatted as an RFC 9457ProblemDetail
whosestatus
should match the response status.Note: The returned
ProblemDetail
may be updated before the response is rendered, e.g. viaErrorResponse.updateAndGetBody(MessageSource, Locale)
. Therefore, implementing methods should use an instance field, and should not re-create theProblemDetail
on every call, nor use a static variable.- Specified by:
getBody
in interfaceErrorResponse
-
getDetailMessageCode
Description copied from interface:ErrorResponse
Return a code to use to resolve the problem "detail" for this exception through aMessageSource
.By default this is initialized via
ErrorResponse.getDefaultDetailMessageCode(Class, String)
.- Specified by:
getDetailMessageCode
in interfaceErrorResponse
-
getDetailMessageArguments
Description copied from interface:ErrorResponse
Return arguments to use along with amessage code
to resolve the problem "detail" for this exception through aMessageSource
. The arguments are expanded into placeholders of the message value, e.g. "Invalid content type {0}".- Specified by:
getDetailMessageArguments
in interfaceErrorResponse
-