0

当我尝试在 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

消息流如下:

FILE<1> -->AggregateControl<1>-->FAN-OUT-COMPUTE-NODES<1,2,3> -->FILE-OUTPUT-NODES<1,2,3> --> AGGREGATE-REQUEST- NODES<1,2,3> --> AGGREGATE-REPLY-NODE<1> --> FAN-IN-COMPUTE-NODE<1> --> FILE-OUTPUT-NODE<1>

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

4

1 回答 1

3

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

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

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

于 2015-05-19T19:31:36.817 回答