El árbol Environment es una parte del árbol lógico de mensaje en que el intermediario puede almacenar información mientras el mensaje pasa por el flujo de mensajes.
La raíz de un árbol Environment se denomina Environment. Este árbol siempre está presente en el mensaje de entrada; se crea un árbol Environment vacío cuando el nodo de entrada recibe el mensaje y lo analiza. Puede utilizar este árbol como desee y crear tanto su contenido como su estructura.
Hay una situación en la que WebSphere Message Broker hace referencia (pero no crea nunca) un campo en este árbol. Si ha solicitado la recogida de datos de contabilidad y estadísticas del flujo de mensajes y ha indicado que es necesario el soporte básico del origen contable, el intermediario comprueba si existe el campo Environment.Broker.AccountingOrigin. Si existe el campo, el intermediario utiliza su valor para establecer el origen contable del registro de datos actual. Para obtener más información acerca de cómo utilizar este campo, consulte Establecer el origen de contabilidad de estadísticas y de contabilidad de flujo de mensajes. (Compárelo con Estructura del árbol de Entorno local, que utiliza el intermediario en algunas situaciones.)
El árbol Environment difiere del árbol LocalEnvironment en que una sola instancia del mismo se mantiene en todo el flujo de mensajes. Si incluye un nodo Compute en el flujo de mensajes, no tiene que especificar si desea que se incluya el árbol Environment en el mensaje de salida. Esto sucede de modo automático y todo el contenido del árbol Environment de entrada se retiene en el árbol Environment de salida, sujeto a las modificaciones que realice utilizando ESQL en el nodo. Cualquier cambio que efectúe estará disponible para los nodos siguientes del flujo de mensajes y para los nodos anteriores si el mensaje vuelve a fluir (por ejemplo, a un nodo FlowOrder o TryCatch).
Se le recomiende que cree información en el árbol Environment dentro de un subárbol denominado Variables (aunque esto no se aplica).
A continuación, se muestra un ejemplo de un árbol Environment.
Puede utilizar las sentencias ESQL siguientes para crear el contenido que se ha mostrado anteriormente.
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)};
Cuando se ha completado el flujo de mensajes, se descarta el árbol Environment.