Por Tratamento de Excessão

O último dos métodos faz uma espécie de armadilha (trap), capturando todas as excessões do tipo especificado em qualquer ponto da rota. Essa armadilha é ativada através do método onException, através do qual podemos definir uma politica de tratamento para a excessão especificada como parametro para o método.

Usando como exemplo a rota definida anteriormente, temos:

public void configure() throws Exception {
	onException(ClasseDaExcessao.class)
		.handled(true)
		// código da rota de excessão

	// declaração da rota
	from("direct:start")
	 // código da rota
}