Trace: • REST Exception Handling
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
jvx:communication:rest_exceptionhandling [2019/07/09 10:31] admin |
jvx:communication:rest_exceptionhandling [2020/06/08 16:02] (current) cduncan |
||
---|---|---|---|
Line 1: | Line 1: | ||
~~NOTRANS~~ | ~~NOTRANS~~ | ||
- | ~~Title: REST Exception handling~~ | + | ~~Title: REST Exception Handling~~ |
Our standard [[jvx:common:util:rest|REST services]] come with standard exception handling. This means that all server-side exceptions will send the http status code 400 (Bad Request) to the client. The implementation already checks some exception types and returns custom http status codes: | Our standard [[jvx:common:util:rest|REST services]] come with standard exception handling. This means that all server-side exceptions will send the http status code 400 (Bad Request) to the client. The implementation already checks some exception types and returns custom http status codes: | ||
Line 9: | Line 9: | ||
| InvalidPasswordException | 401 (Unauthorized) | | | InvalidPasswordException | 401 (Unauthorized) | | ||
- | If you want custom status codes, it's possible to throw **RestServiceException**. This Exception class supports custom status codes and error details. | + | If you want custom status codes, it's possible to throw **RestServiceException**. This exception class supports custom status codes and error details. |
<file java> | <file java> | ||
if (!isBookingAvailable()) | if (!isBookingAvailable()) | ||
{ | { | ||
- | IBean bnDetails = new Bean(); | + | IBean details = new Bean(); |
- | bnDetails.put("id", errorId); | + | details.put("id", errorId); |
- | bnDetails.put("message", "The booking feature isn't yet implemented!"); | + | details.put("message", "The booking feature isn't yet implemented!"); |
- | throw new RestServiceException(501, bnDetails); | + | throw new RestServiceException(501, details); |
} | } | ||
... | ... | ||
</file> | </file> |