Programmers naturally give more attention to a “happy path” - default scenario in application execution in which everything works as expected, often neglecting the opposite way things can go. Topics such as the use of exceptions and error handling seem insufficiently explored, so it is difficult to find useful resources online. Things usually end up with reckless throwing of built-in exceptions and leaving up error handling to the framework.

In this highly practical talk full of applicable code examples, you will learn how to deal with exceptional conditions in an elegant way, you will master some essential techniques for structuring and modeling custom Exceptions, and learn how to establish reusable Central Error Handling system.

Special attention is given to a set of best practices and techniques around exceptions, such as formatting exception messages, component-level exception type, exception wrapping. Combined with the universal central error handler that also defines behavioural interfaces to allow exceptions to affect the error handling workflow, these concepts together make up an efficient error handling architecture that scales very well and is easy to maintain.


Please login to leave a comment

Jean-Bernard at 17:54 on 10 Nov 2019

Interesting thanks !

I've attended your talk via live streaming! Great talk! The first part was really exceptional! :)

As feedback, I can find only two things that can be improved:
1) the UML diagram for who does not know UML is really a misery... maybe finding a better way to explain the same concept
2) in the last part, when talking about the global error handler, the marker interfaces used to provide custom http codes, DoNotLog behaviors and similar things, to me are code smells. example: TodoNotValid is a domain exception and should not be aware of the infrastructure layer HTTP error code

Except of those two points, great presentation!

Good staff thanks. It is enlighting and useful

Spiridon at 20:06 on 11 Nov 2019

Thanks for the slides!