Types of errors
We can distinguish two main types of errors—recoverable and irrecoverable. Let's have a look at these in detail.
Recoverable errors
A recoverable error is a temporary error. It means that this error might be recovered automatically after a certain time.
An example would be a network connection that is temporarily down, resulting in IOException
.
Basically, the exceptions are represented as recoverable errors in Camel.
In that case, Camel stores the exceptions (the recoverable errors) in the exchange using the setException
(throwable cause) method:
Exchange.setException(new IOException("My exception"));
As we will see later, an exchange containing an exception will be caught by an error handler, which will react accordingly.
Irrecoverable errors
An irrecoverable error is an error that remains an error no matter how many times you try to perform the same action.
An example would be trying to access a nonexistent table in a database, or accessing a JMS queue that does not exist.
An irrecoverable...