Package org.springframework.web
Class HttpRequestMethodNotSupportedException
java.lang.Object
java.lang.Throwable
java.lang.Exception
jakarta.servlet.ServletException
org.springframework.web.HttpRequestMethodNotSupportedException
- All Implemented Interfaces:
Serializable
,ErrorResponse
public class HttpRequestMethodNotSupportedException
extends ServletException
implements ErrorResponse
Exception thrown when a request handler does not support a
specific request method.
- Since:
- 2.0
- Author:
- Juergen Hoeller, Sam Brannen
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.web.ErrorResponse
ErrorResponse.Builder, ErrorResponse.Interceptor
-
Constructor Summary
ConstructorDescriptionCreate a newHttpRequestMethodNotSupportedException
.HttpRequestMethodNotSupportedException
(String method, Collection<String> supportedMethods) Create a newHttpRequestMethodNotSupportedException
. -
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 headers to use for the response.Return the HTTP request method that caused the failure.Return the HTTP status code to use for the response.Return the actually supported HTTP methods asHttpMethod
instances, ornull
if not known.String[]
Return the actually supported HTTP methods, ornull
if not known.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, getDetailMessageCode, getTitleMessageCode, getTypeMessageCode, updateAndGetBody
-
Constructor Details
-
HttpRequestMethodNotSupportedException
Create a newHttpRequestMethodNotSupportedException
.- Parameters:
method
- the unsupported HTTP request method
-
HttpRequestMethodNotSupportedException
public HttpRequestMethodNotSupportedException(String method, @Nullable Collection<String> supportedMethods) Create a newHttpRequestMethodNotSupportedException
.- Parameters:
method
- the unsupported HTTP request methodsupportedMethods
- the actually supported HTTP methods (possiblynull
)
-
-
Method Details
-
getMethod
Return the HTTP request method that caused the failure. -
getSupportedMethods
Return the actually supported HTTP methods, ornull
if not known. -
getSupportedHttpMethods
Return the actually supported HTTP methods asHttpMethod
instances, ornull
if not known.- Since:
- 3.2
-
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
-
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
-
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
-