sách gpt4 ai đã đi

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

In lại 作者:行者123 更新时间:2023-12-02 21:37:38 29 4
mua khóa gpt4 Nike

我的 Camel 路线如下(示例)

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

to(smpp:abc) --- 提交短信至短信中心

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

我面临的问题如下

我从队列中收到的交换属性/ header 很少,但在收到 SMPP 的响应后,我发送的交换 header /属性被清除,无法用于调用 Web 服务。我该怎么做才能保持这些值不变,直到到达路线终点。我无法控制 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/

29 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