BIP4435聚合回复节点收到一条回复消息,该消息的回复ID为空



当我尝试使用IBM集成总线中的聚合节点进行扇入时,我收到以下错误。

( T24_Integ_Node.default ) The Aggregation Reply node has received a reply message which has a blank reply ID: ''.   
This is not allowed because the reply ID is needed so that a reply message can be matched to the original request message. If you are using WebSphere MQ to send and receive aggregation requests, the reply ID must be stored in the correlation identifier (CorrelId) field of the message descriptor (MQMD) and it must be set to the value of the message ID in the request message's MQMD

消息流如下:

文件<1> -->AggregateControl<1> -->FAN-OUT-Computer-NODES<1,2,3>-->文件输出节点<1,2,3>-->聚集请求节点<1,2,3>-->聚合回收节点<1> -->FAN-IN-COMPUTE-CODE<1> -->文件输出节点<1>

请注意,我没有使用MQ节点请提出建议。

您正在尝试的操作将不起作用,因为您在聚合内部没有使用请求/回复协议。正如知识中心在该链接上的文章中所述,"聚合节点仅适用于使用请求/回复模型的传输",而对文件的写入和读取不能满足这一要求。满足此要求的一些节点是MQ节点、SOAP异步节点和HTTP异步节点。此外,您需要使用AggregateControl节点来标记扇出的开始,并且我在您的流程草图中没有看到AggregateControl节点。

我怀疑您想将文件提交给外部应用程序,让该应用程序的实例独立并行运行,接收响应文件,然后根据文件名称或文件内容中的标志对响应文件进行分组。如果是,请使用收集器节点。

另一种选择是将聚合节点与聚合内部的MQ节点一起使用,这些MQ节点提供一个中间流,该中间流将扇出协议从MQ更改为文件,然后反过来将扇入协议从文件更改为MQ。有关此技术的示例,请参阅IIB的web服务聚合示例。

最新更新