环境树结构

环境树是逻辑消息树的一部分,当消息经过消息流时,可以在其中存储信息。

环境树的根称为 Environment。此树始终出现在输入消息中;当输入节点接收到消息并对其进行解析时将创建一个空的 Environment 树。您可以选择使用此树,并创建它的内容和结构。

有一种 WebSphere Message Broker 引用(但从不创建)此树中某字段的情况。如果您已经请求了数据集用于消息流记帐和统计信息,并指示了需要记帐原点基本支持,则代理将检查是否存在 Environment.Broker.AccountingOrigin 字段。如果该字段存在,代理将使用它的值来设置当前数据记录的记帐原点。有关使用此字段的更多信息,请参阅设置消息流记帐和统计信息记帐原点。(请将此内容与LocalEnvironment 树结构对照,代理在几种情况下会使用后者。)

Environment 树与 LocalEnvironment 树的不同之处在于,它的单个实例在整个消息流中维护。如果在消息流中包含 Compute 节点,无需指定是否要将 Environment 树包含在输出消息中。这会自动发生,并且输入 Environment 树的全部内容都保留在输出 Environment 树中,取决于您在节点中使用 ESQL 所作的任何修改。您所作的任何更改都可用于消息流中的后继节点,如果消息流回流(例如到 FlowOrder 或 TryCatch 节点),则还可用于先前节点。

建议您在 Environment 树中称为 Variables 的子树中创建信息(尽管不强制执行此操作)。

下面显示了 Environment 树的示例。


Environment 树附带包含五个子代的变量子树。第五个子代还包含子代。

您应该使用以下 ESQL 语句创建上面显示的内容。

SET Environment.Variables =       ROW('granary' AS bread, 'riesling' AS wine, 'stilton' AS cheese);
SET Environment.Variables.Colors[] =
      LIST{'yellow', 'green', 'blue', 'red', 'black'};
SET Environment.Variables.Country[] = LIST{ROW('UK' AS name, 'pound' AS currency),
   ROW('USA' AS name, 'dollar' AS currency)};

当完成消息处理后,会废弃 Environment 树。

相关概念
消息建模
LocalEnvironment 树结构
相关名
相关任务
开发消息流
访问 Environment 树
设置消息流记帐和统计信息记帐原点
编写 ESQL
编写 Java
相关参考
内置节点
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ac12620_