BIP4435 Aggregation Reply节点收到一条回复消息,其回复ID为空白:

时间:2015-03-23 10:43:43

标签: java ibm-mq ibm-integration-bus

当我尝试在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&LT 1为卤素; - > AggregateControl&LT 1为卤素; - > FAN-OUT-COMPUTE节点< 1,2,3> - > FILE-OUTPUT节点< 1,2,3> - > AGGREGATE-REQUEST-NODES< 1,2,3> - > AGGREGATE-REPLY-节点< 1> - > FAN-IN-COMPUTE-节点< 1> - > FILE-OUTPUT-节点< 1>

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

1 个答案:

答案 0 :(得分:3)

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

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

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