我在 JPA 中使用骆驼 2.10。在我的上下文中,我有 2 条路线。路由 1 从 JPA 端点(db 表)消费,进行一些处理(在 bean 中),然后将消息转发到路由 2。如果在处理过程中出现问题,bean 返回 NULL。
我想在路由 2 中做的第一件事是检查正文(从路由 1 转发)是否不为 NULL。因此,我看到了 2 种可能性:1)在路线 2 中使用 validate
<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>
你认为更好的方法是什么?
谢谢你的建议!
BR马蒂亚斯