Una propiedad definida por el usuario (UDP) es una propiedad que se define cuando se construye un flujo de mensajes utilizando el Editor de flujos de mensajes. Esta propiedad la puede utilizar el programa ESQL o Java™ dentro de los nodos de flujo de mensajes, por ejemplo, un nodo Compute.
La ventaja de las UDP es que el personal de operaciones puede cambiar los valores durante el despliegue y el tiempo de ejecución. No es necesario cambiar los programas de aplicación. Por ejemplo, si utiliza las UDP para que contengan datos sobre su centro de trabajo, puede configurar un flujo de mensajes para un sistema, una tarea o un entorno determinados en tiempo de despliegue, sin tener que cambiar el código a nivel de nodo de mensajes.
Cuando inicia el Editor de flujos de mensajes para crear un flujo de mensajes o modificar un flujo de mensajes existente, así como para decidir qué nodos se requieren en el flujo de mensajes, también tiene la opción (proporcionada por el separador) de definir y asignar valores iniciales a algunas propiedades definidas por el usuario. Utilice el separador Propiedades definidas por el usuario en la parte inferior de la ventana de edición. Consulte el tema Editor de flujos de mensajes para obtener más información.
Consulte Sentencia DECLARE para obtener información detallada sobre la sentencia DECLARE y consulte Acceder a propiedades definidas por el usuario de flujo de mensajes desde un nodo JavaCompute para obtener más información sobre cómo utilizar una UDP en un nodo JavaCompute.
Si utiliza ESQL para acceder a la UDP, el valor que se asigna a una UDP al definirla en un flujo de mensajes altera temporalmente el valor de dicha variable en el programa ESQL.
El valor de una UDP también se puede modificar en tiempo de despliegue utilizando el Editor de archivador de intermediario para editar el archivo BAR. Este valor prevalecerá sobre el valor que se haya establecido al definir el flujo de mensajes.
El valor de la UDP se establece en el nivel del flujo de mensajes y es el mismo ara todos los nodos elegibles contenidos en el flujo. Un nodo elegible es un nodo que soporta las UDP y está dentro del ámbito de la declaración que declara la UDP a la aplicación. Por ejemplo, si utiliza el Editor de flujos de mensajes para cambiar el valor de una propiedad de usuario denominada timezone, que se declara en un flujo de mensajes denominado mySchema, en un flujo de mensajes denominado myFlow, la UDP está disponible en tiempo de ejecución para todos los nodos de myFlow que dan soporte a las UDP y que están dentro de mySchema.
Para cambiar dinámicamente el comportamiento de un flujo de mensajes, se pueden consultar, descubrir y establecer en el tiempo de ejecución las propiedades definidas por el usuario. Puede utilizar el API de Message Broker (también conocido como API de CMP) o WebSphere Message Broker Explorer para manipular estas propiedades, que una herramienta de supervisión de sistemas puede utilizar para realizar acciones automáticas en respuesta a situaciones que detecta en los sistemas supervisados.
Por ejemplo, un flujo de mensajes contiene un nodo Route, que se utiliza para diferenciar las clases de cliente que se definen en el mensaje. El nodo Route tiene una propiedad definida por el usuario denominada ProcessClasses, que se establece con un valor inicial de All. Cuando ProcessClasses se establece en All, el nodo direcciona los mensajes de todas las clases de cliente al primer terminal para que los procese inmediatamente.
Cuando se detectan determinadas condiciones (por ejemplo, el sistema de supervisión detecta que la carga de solicitudes está haciendo que el acuerdo de nivel de servicio caiga por debajo de lo previsto), el nodo Route se debe establecer para que sólo pase las solicitudes de los clientes de clase "Gold" para su proceso inmediato, mientras que las solicitudes de otros clientes se envían a otro terminal de salida, que las pone en cola para su posterior proceso por lotes. Por consiguiente, la aplicación de supervisión establece ProcessClasses en Gold para que el nodo Route direccione los mensajes menos críticos al segundo terminal.
Para que sea más fácil saber qué hace una propiedad definida por el usuario y qué valores puede tener dicha propiedad, adopte un convenio de denominación adecuado. Por ejemplo, una propiedad definida por el usuario denominada propiedad01, con un valor inicial de valorA, no es tan útil como una propiedad denominada RutaHaciaAoB con un valor inicial de RutaA.
Para obtener más información, consulte Establecimiento de las propiedades definidas por el usuario en tiempo de ejecución en una aplicación CMP o Establecimiento de propiedades definidas por el usuario dinámicamente en tiempo de ejecución utilizando WebSphere Message Broker Explorer.
Una alteración temporal de archivo BAR tiene prioridad sobre los cambios realizados en el editor de flujos de mensajes y los cambios realizados en el editor de flujos de mensajes tienen prioridad sobre los cambios realizados en el código ESQL.