骆驼Jpa绕过@consumed
camel Jpa bypass @consumed
我正在尝试 Apache Camel 技术并遇到麻烦。
我将 Jpa 组件的轮询使用者用作 from() 并在我的实体上设置 @consumed 注释以在流程结束时将其状态更改为 "successfully processed"。效果很好。
但是如果出现任何错误,我不想在我的数据库中设置标志 "successfully processed",而是像 "error occurs".
为了解决这个问题,我创建了一个 "dead letter queue" 处理器,它试图改变我正在进行的实体的状态,以便稍后保存在数据库中。但是这个过程总是被标记为完成所以@Consumed 方法总是被调用。
所以我的问题是:如果出现错误,如何跳过@Consumed 方法?是否有特定的交易所状态要设置?
@Consumed
方法可以有Exchange
作为参数,在那里你可以检查交换是否失败,并得到引起的异常什么的。无论如何,它应该有成功与否的状态,然后您可以相应地更改实体。
我正在尝试 Apache Camel 技术并遇到麻烦。
我将 Jpa 组件的轮询使用者用作 from() 并在我的实体上设置 @consumed 注释以在流程结束时将其状态更改为 "successfully processed"。效果很好。
但是如果出现任何错误,我不想在我的数据库中设置标志 "successfully processed",而是像 "error occurs".
为了解决这个问题,我创建了一个 "dead letter queue" 处理器,它试图改变我正在进行的实体的状态,以便稍后保存在数据库中。但是这个过程总是被标记为完成所以@Consumed 方法总是被调用。
所以我的问题是:如果出现错误,如何跳过@Consumed 方法?是否有特定的交易所状态要设置?
@Consumed
方法可以有Exchange
作为参数,在那里你可以检查交换是否失败,并得到引起的异常什么的。无论如何,它应该有成功与否的状态,然后您可以相应地更改实体。