Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Building RESTful Web Services with Spring 5

You're reading from   Building RESTful Web Services with Spring 5 Leverage the power of Spring 5.0, Java SE 9, and Spring Boot 2.0

Arrow left icon
Product type Paperback
Published in Jan 2018
Publisher Packt
ISBN-13 9781788475891
Length 228 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Ludovic Dewailly Ludovic Dewailly
Author Profile Icon Ludovic Dewailly
Ludovic Dewailly
Raja CSP Raman Raja CSP Raman
Author Profile Icon Raja CSP Raman
Raja CSP Raman
Arrow right icon
View More author details
Toc

Table of Contents (15) Chapters Close

Preface 1. A Few Basics FREE CHAPTER 2. Building RESTful Web Services in Spring 5 with Maven 3. Flux and Mono (Reactor Support) in Spring 4. CRUD Operations in Spring REST 5. CRUD Operations in Plain REST (Without Reactive) and File Upload 6. Spring Security and JWT (JSON Web Token) 7. Testing RESTful Web Services 8. Performance 9. AOP and Logger Controls 10. Building a REST Client and Error Handling 11. Scaling 12. Microservice Basics 13. Ticket Management – Advanced CRUD 14. Other Books You May Enjoy

Error handling


So far in our application, we haven't defined any specific error handler to catch the error and convey it to the right format. Usually when we deal with an unexpected situation in REST APIs, it will automatically throw an HTTP error such as 404. Errors such as 404 will show explicitly in the browser. This is fine normally; however, we might need a JSON format result regardless of whether things go right or wrong.

Converting the error into JSON format would be a nice idea in such cases. By providing the JSON format, we can keep our application clean and standardized.

Here, we will discuss how to manage errors and display them in JSON format when things go wrong. Let's create a common error handler class to manage all of our errors:

public class ErrorHandler {
  @ExceptionHandler(Exception.class)
  public @ResponseBody <T> T handleException(Exception ex) {    
    Map<String, Object> errorMap = new LinkedHashMap<>();
    if(ex instanceof org.springframework.web...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime