Я использую верблюд 2.10 с JPA. У меня есть 2 маршрута в моем контексте. Маршрут 1 использует конечную точку JPA (таблицу базы данных), выполняет некоторую обработку (в bean-компоненте), а затем перенаправляет сообщение на маршрут 2. Если во время обработки что-то пойдет не так, bean-компонент возвращает NULL.
Первое, что я хочу сделать на маршруте 2, это проверить, не является ли тело (перенаправленное с маршрута 1) NULL. Таким образом, я вижу 2 возможности: 1) использование проверки в маршруте 2
<route id="route2">
...
<validate>
<simple>${body} != null</simple>
</validate>
2) используя interceptSendToEndpoint, чтобы вообще избежать отправки сообщения NULL на маршрут 2:
<interceptSendToEndpoint uri="toRoute2" skipSendToOriginalEndpoint="true">
<when><simple>${body} == null</simple></when>
<transform>
<constant>Error Message</constant>
</transform>
<to uri="direct:logError"/>
</interceptSendToEndpoint>
как вы думаете, как лучше?
спасибо за ваши предложения!
БР Матиас