使用要求-回覆相互關聯訊息

有兩種方式可將 MQSeries 要求-回復案例BizTalk Server協調流程中的訊息相互關聯。 第一個方法是將 MessageID (MQMD_MsgID) 和 CorrelationID (MQMD_CorrelationID) 設定為相同的值,以提供相互關聯識別碼。 第 2 種是使用 BizTalk_CorrelationId 內容屬性。

將訊息傳送至 MQSeries 佇列管理員時,您可以將訊息識別碼 (MQMD_MsgID) ,並將相互關聯識別碼 (MQMD_CorrelationID) 設定為傳出訊息中的相同值。 MQSeries 佇列管理員會將 MessageID 複製到回復訊息的 CorrelationID。 您可以使用 MQMD_CorrelationID 的值,初始化傳出訊息的相互關聯集,並遵循傳入訊息的相互關聯集。

或者,除了將 MessageID 和 CorrelationID 設定為傳出訊息中的相同值,您也可以搭配 BizTalk Adapter for MQSeries 的 solicit-response send port 使用 BizTalk_CorrelationID 內容屬性。

若要在 BizTalk 協調流程中使用 MQSeries Server 提供的識別碼進行相互關聯,BizTalk Server必須先取得識別碼。 您的應用程式透過請求-回應要求執行此工作。 BizTalk Server使用 MQSC 配接器將請求-回應要求傳送至 MQSeries 伺服器。 在傳回中,它會收到訊息識別碼 (MQMD_MsgId) 和相互關聯識別碼 (MQMD_CorrelationId) 的回應。

對於請求-回應傳送埠中的傳出訊息,配接器會將 MQSeries 所產生的MQMD_MsgID複製到MQSeries.BizTalk_CorrelationId內容屬性。

接收訊息時,配接器會將MQMD_CorrelationId複製到MQSeries.BizTalk_CorrelationId。 在這種情形下,使用相互關聯集可初始化外寄訊息的相互關聯集,並使用 MQSeries.BizTalk_CorrelationId 的值採用內送訊息的相互關聯集。

另請參閱

適用於 WebSphere MQ 的用戶端 型 BizTalk 配接器程式設計人員指南