【问题标题】:camel Jpa bypass @consumed骆驼Jpa绕过@consumed
【发布时间】:2017-04-03 22:54:25
【问题描述】:

我正在尝试 Apache Camel 技术并遇到了麻烦。

我使用 Jpa 组件的轮询消费者作为 from() 并在我的实体上设置 @consumed 注释以将其在流程结束时的状态更改为“成功处理”。它工作正常。

但如果出现任何错误,我不想在我的数据库中设置“成功处理”标志,而是设置“发生错误”之类的标志。

为了解决这个问题,我用一个处理器创建了一个“死信队列”,它试图改变我正在进行的实体的状态,以便稍后保存在数据库中。但该过程始终标记为已完成,因此始终会调用 @Consumed 方法。

所以我的问题是:如果出现错误,如何跳过@Consumed 方法?是否需要设置特定的交易所状态?

【问题讨论】:

    标签: java jpa apache-camel


    【解决方案1】:

    @Consumed方法可以有Exchange作为参数,在那里你可以检查交换是否失败,并得到导致的异常什么的。无论如何它应该有状态,如果它成功与否,然后你可以相应地改变实体。

    【讨论】:

      猜你喜欢
      • 2013-06-03
      • 1970-01-01
      • 1970-01-01
      • 2023-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      • 1970-01-01
      相关资源
      最近更新 更多