Мне нужно сделать onException, чтобы быть глобальным для всех создателей маршрутов, чтобы не переписывать одну и ту же строку для каждого создателя маршрутов, который я создаю.Текущая область для моего обработчика исключений - это верблюжий контекст для конкретного построителя маршрутов.Мне нужно сделать классы построителя маршрутов, r1 и r2, чтобы использовать один и тот же onException (). Process.
Текущая рабочая onException, которую я использую:
def configure {
onException(classOf[CustomException]).process(exceptionProcessor).
process(doExtraProcess)
from(address).
process(doSmth).
process(doSmthElse)
}
Когда я переместил onException() строка из метода configre находится на уровне класса, как показано ниже:
onException(classOf[CustomException]).process(exceptionProcessor).
process(doExtraProcess)
def configure {
from(address).
process(doSmth).
process(doSmthElse)
}
Я получил эту ошибку:
Причина: org.apache.camel.FailedToCreateRouteException:Не удалось создать маршрут route52 в: >>> OnException [[class CustomException] -> [process [null], process [null]]] <<< в маршруте: Route [[From [direct: locus]] -> [OnException[[... потому что ref должен быть указан в: process [null]
Вызывается: java.lang.IllegalArgumentException: ref должен быть указан в: process [null]