HTTP 501 for java.lang.UnsupportedOperationException
exception, http, java, rest
Solution
In this case you should use `405` Method Not Allowed (all quotes from Wikipedia):
A request was made of a resource using a request method not supported by that resource; for example, using GET on a form which requires data to be presented via POST, or using PUT on a read-only resource.
`501` is reasonable:
The server either does not recognise the request method, or it lacks the ability to fulfill the request.
but I would keep it for operations that you plan to implement in the near future.
Problem
I have a generic REST service layer written to Java modules which can be plugged in. If any of the desired operation is not supported by a Module (GET/POST/PUT/DELETE of a Resource), the module throws java.lang.UnsupportedOperationException or an equivalent Exception Type that I have. So, can I return a HTTP 501 Error Code to the client in this case?