sách gpt4 ai đã đi

apache-camel - Camel - 保留消息的副本

In lại 作者:行者123 更新时间:2023-12-02 04:40:07 28 4
mua khóa gpt4 Nike

我的 Camel 路线如下(示例)

from (activemq:xyz) --- 从队列接收消息

to(smpp:abc) --- 将消息提交给 SMSC

to(cxf:hij) --- 基于 SMSC 响应成功调用网络服务

我遇到的问题如下

我从队列中收到的交换属性/ header 很少,但在收到来自 SMPP 的响应后,我发送的交换 header /属性已被清除,我无法调用网络服务。在到达路线尽头之前,我该怎么做才能使这些值保持原样。我无法控制 SMSC 的实现,也无法更改 SMSC 的响应。我正在使用 SPRING dsl

1 Câu trả lời

您可以考虑使用名为 Content Enricher 的企业集成模式对于 SMPP 部分,使用自定义 AggregationStrategy 来“保留”您的原始交换(具有所有 header 和属性),并从 SMSC 所做的任何事情中获取您需要的东西(我想是正文?)。

from (activemq:xyz)
.enrich(smpp:abc, new PreserveHeadersAndPropertiesAggregationStrategy())
.to(cxf:hij)
;

public class PreserveHeadersAndPropertiesAggregationStrategy implements AggregationStrategy {
@Ghi đè
public Exchange aggregate(Exchange original, Exchange resource) {
// use body from getIn() or getOut() depending on the exchange pattern...
original.getIn().setBody(resource.getIn().getBody());
original.getOut().setBody(resource.getOut().getBody());
return original;
}
}

关于apache-camel - Camel - 保留消息的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21012509/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com