У меня есть onException
, настроенный в одном классе DefaultRouteBuilder
. Я хочу, чтобы этот onException
использовался во всех других маршрутах в моем контексте. Я сомневаюсь, следует ли мне наследовать DefaultRouteBuilder
во всех других маршрутах и вызывать super.configure()
в методе configure()
или внедрять DefaultRouteBuilder defaultRoute
во все остальные классы RouteBuilder
и вызывать defaultRoute.configure()
в методе configure()
. Какой должен подойти?
Внедрение или наследование Router Builder для глобального исключения onException в apache camel
Ответы (1)
Глобальный DSL onException работает только внутри одного и того же RouteBuilder, так как camelcontext обрабатывает экземпляр построителя маршрутов отдельно.
person
Willem Jiang
schedule
04.03.2014
Вы говорите, что внедрение defaultRouteBuilder вызовет проблемы, поскольку в этом RouteBuilder технически не определены маршруты. Вызов defaultRouteBuilder.configure() на самом деле не будет перехватывать onException для маршрутов в ActualRouteBuilder, куда я ввожу defaultRouteBuilder. Я прав ?
- person Ayan; 04.03.2014
Я бы посмотрел на реализацию onException, прежде чем задавать этот вопрос. Спасибо
- person Ayan; 05.03.2014
super.configure()
- поскольку вам больше не нужен RouteBuilder после настройки маршрута, использование наследования было бы хорошо. - person vikingsteve   schedule 27.02.2014