MQGet 节点消息处理
下面各图显示了在 MQGet 节点中执行的各项处理,这些处理的目的是:
传播消息
构造输出树 LocalEnvironment
构造输出树消息
传播消息
如果输入树中有 MQMD,则使用该 MQMD,否则会使用缺省的 MQMD。
创建缺省 MQGMO,如果在输入树中有 GMO,会根据节点属性,用它来修改缺省的 GMO。
对
WebSphere MQ
发出 MQGet 调用。
分析从调用返回的返回码(CC),相应地如下传播消息:
确定
使用标准消息解析技术,创建输出 LocalEnvironment 并输出消息树。 传播到“输出”终端。
Warning
使用 BLOB 作为消息体类型,创建输出 LocalEnvironment 并输出消息树。 如果连接,则传播到“警告”终端。否则,不会发生传播,流结束。
失败(无消息)
通过复制输入,创建输出 LocalEnvironment 并输出消息树。 如果连接,则传播到 No Message 终端。否则,不会发生传播。 传播到 No Message 终端的输出消息是根据“产生方式”和“复制消息”或“复制本地环境”属性的值,仅从输入消息构造的。
失败(其他)
传播到“失败”终端。如果未连接“失败”终端,则代理会抛出一个异常,并将控制权返回给可以处理此异常的前一个最近节点。请参阅
处理消息流中的错误
以获取更多信息。
下图直观地说明了这一过程:
构造输出 LocalEnvironment
如果 MQGet 节点上的
generateMode
属性不是一个包含
LocalEnv
的选项,则将输出本地环境 设置为输入,并传播本地环境。
注:
在此情况下,不会顺流传播 任何进入 OutputLocalEnvironment 的更新。
否则,如果
copyLocalEnv
属性未设置为
无
,则将输入本地环境复制到输出中。
如果输出数据位置指向输出本地环境,则通过从结果树复制而在此处插入更改。
传播本地环境。
下图直观地说明了这一过程:
构造输出消息
如果
generateMode
不包含消息,则将输出消息设置为同输入消息。
转至步骤 5
。
如果
输出数据位置
设置为
OutputRoot
,则整个地从结果树创建输出消息。
转至步骤 5
。
如果
copyMessage
未设置为
无
,则将输入消息复制到输出消息树。
如果输出数据位置指向输出消息树的一部分,则通过从结果树中由结果数据位置定义的位置进行复制,而在此处插入更改。
则消息被传播。
下图直观地说明了这一过程:
有关如何使用的详细示例,请参阅
在请求-响应流中使用 MQGet 节点
。
相关概念
消息流概述
相关参考
在请求-响应流中使用 MQGet 节点
MQGet 节点
声明
|
商标
|
下载
|
书库
|
支持
|
反馈
ac34690_