Nodo JavaCompute

Este tema contiene las secciones siguientes:

Finalidad

Utilizar el nodo JavaCompute para realizar una de las tareas siguientes:

  • Examinar un mensaje de entrada y, en función del contenido, propagarlo sin modificaciones a uno de los dos terminales de salida del nodo; el nodo se comporta de un modo similar a un nodo Filter, pero utiliza Java en lugar de ESQL para decidir qué terminal de salida debe utilizar.
  • Cambiar parte de un mensaje de entrada y propagar el mensaje cambiado a uno de los terminales de salida.
  • Crear y construir un nuevo mensaje de salida que sea totalmente independiente del mensaje de entrada.

El código Java utilizado por el nodo se almacena en un proyecto Java de Eclipse.

El nodo JavaCompute se representa en el entorno de trabajo mediante el icono siguiente:

Icono de nodo Compute

Utilización de este nodo en un flujo de mensajes

El nodo JavaCompute se puede utilizar de tres formas:

  • Utilice el nodo JavaCompute para examinar un mensaje y propagar el mensaje a un terminal de salida basándose en el contenido de mensaje. El contenido del mensaje no cambia y se tiene acceso de sólo lectura al mensaje.
  • Utilice el nodo JavaCompute para modificar un mensaje y propagar el mensaje modificado a un terminal de salida.
  • Utilice el nodo JavaCompute para crear un mensaje nuevo y propagar el nuevo mensaje a un terminal de salida.

Examine los ejemplos de Galería de ejemplos en el Kit de herramientas de Message Brokers.

Configuración del nodo JavaCompute

Puede configurar cada instancia del nodo JavaCompute que se produce en un flujo de mensajes.

Para ello, pulse el botón derecho del ratón en el nodo de la vista de editor. Se presenta la opción Abrir Java. Pulse esta propiedad.

La primera vez que lo haga, se iniciará un asistente que le guiará durante la creación de un nuevo proyecto Java y una clase Java que contiene código de esqueleto. Este código de esqueleto se presenta en un editor Java.

Consulte Crear código Java para un nodo JavaCompute para ver ejemplos de la plantilla o del código de esqueleto que se proporcionan.

Si ésta no es la primera vez que realiza esta acción, se le presentará código Java en una perspectiva de cálculo de Java.

Para asociar una instancia de un nodo JavaCompute con una clase Java, pulse el botón derecho del ratón en el nodo de la vista de editor del flujo de mensajes y seleccione Propiedades y, a continuación, Básicas. Se visualizarán las propiedades básicas del nodo.

El nodo JavaCompute sólo tiene una propiedad básica. Esta propiedad es Clase Java. Entre el nombre de la clase Java que se utiliza en este nodo. Este nombre debe estar en la lista clases de nodo JavaCompute que están disponibles en las referencias de proyecto para el proyecto de flujo de mensajes.

Todas las propiedades obligatorias para las que debe especificar un valor (las que no tienen un valor por omisión definido) están marcadas con un asterisco en el diálogo de propiedades.

Cuando haya terminado la configuración, pulse Aplicar. Esto realiza los cambios en el nodo JavaCompute sin cerrar el diálogo de propiedades.

Alternativamente, pulse Aceptar. Esto realiza los cambios en el nodo JavaCompute y cierra el diálogo de propiedades.

Puede pulsar Cancelar para cerrar el diálogo y descartar todos los cambios que ha realizado en el nodo.

Especificación de Java

Codifique sentencias Java para personalizar el comportamiento del nodo JavaCompute.

Por ejemplo, puede personalizarlo para crear un nuevo mensaje o mensajes de salida, utilizando mensajes de entrada o contenido de base de datos (sin modificar o modificados), o datos nuevos. Por ejemplo, es posible que desee modificar un valor en el mensaje de entrada añadiendo un valor de una base de datos y almacenar el resultado en un campo en el mensaje de salida.

Codifique las sentencias Java que desee en un archivo Java que esté asociado con el nodo JavaCompute.

Si aún no existe un archivo Java para este nodo, pulse el botón derecho del ratón en el nodo JavaCompute y pulse Abrir Java. Esto crea y abre un nuevo archivo Java en la vista de editor.

Si el archivo ya existe, pulse el botón Examinar junto a la propiedad Clase Java. Esto visualiza el diálogo Selección de tipo de nodo JavaCompute, que lista las clases Java a las que este flujo de mensajes puede acceder. Seleccione la clase Java apropiada y pulse Aceptar. La lista de tipos coincidentes muestra las clases Java adecuadas cuando se entra como mínimo un carácter en el campo Selección.
Nota: Se muestran todas las clases Java si se entra '*' en el campo Selección.

Validación de mensajes

Establezca las propiedades de validación para definir cómo se debe validar el mensaje producido por el nodo JavaCompute. Tenga en cuenta que estas propiedades no hacen que se valide el mensaje de entrada. Se supone que, si dicha validación es necesaria, el nodo de entrada o un nodo de validación anterior ya habrá realizado la validación.

Si desea ver más información detallada, consulte los apartados Validar mensajes y Propiedades de validación para mensajes del dominio MRM.

Terminales y propiedades

En la tabla siguiente se describen los terminales de nodo JavaCompute.

Terminal Descripción
Entrada El terminal de entrada que acepta un mensaje para que lo procese el nodo.
De anomalías El terminal de salida al que se direcciona el mensaje de entrada si se detecta una anomalía durante el cálculo. (Aunque esté establecida la propiedad Validar, los mensajes propagados a este terminal no se validan.)
De salida El terminal de salida al que se dirige el mensaje transformado.
Alternativo Un terminal de salida alternativo al que se puede direccionar el mensaje transformado, en lugar de direccionarlo al terminal de salida.

>Las siguientes tablas describen las propiedades del nodo; la columna M indica si la propiedad es obligatoria (marcada con un asterisco en el diálogo de propiedades si se ha de entrar un valor cuando no se ha definido ningún valor por omisión), la columna C indica si la propiedad es configurable (se puede cambiar el valor cuando se añade el flujo de mensajes al archivo bar para desplegarlo).

El nodo JavaCompute tiene la propiedad básica que se describe en la tabla siguiente.

Propiedad O C Valor por omisión Descripción
Clase Java No Ninguna Nombre de la clase Java que se utiliza en este nodo. Este nombre debe aparecer en la lista de clases Java que están disponibles para utilizarse.

En la tabla siguiente se describen las propiedades de validación del nodo JavaCompute.

Propiedad O C Valor por omisión Descripción
Validar Ninguna Determina si la validación tiene lugar y qué parte del mensaje se valida. Los valores válidos son Ninguno, Contenido y valor, Contenido y Heredar.
Acción para anomalía No Excepción Determina qué sucede si se produce un error de validación. Sólo puede establecer esta propiedad si Validar se establece en Contenido o Contenido y valor. Los valores válidos son Rastreo de usuario, Anotaciones de error locales, Excepción y Lista de excepciones.
Incluir todas las limitaciones de valor No Seleccionado Esta propiedad no se puede editar. La acción por omisión, indicada por el recuadro seleccionado, es que en la validación se incluyen todas las limitaciones de valor.
Arreglo No Ninguna Esta propiedad no se puede editar. Se proporciona un arreglo mínimo. Los valores válidos son Ninguno y Todos.

En la tabla siguiente se describen las propiedades de las Opciones de mensajes generales para el nodo JavaCompute.

Propiedad O C Valor por omisión Descripción
Temporización del análisis No A petición Esta propiedad controla cuándo se analiza un mensaje de entrada. Los valores válidos son A petición, Inmediato y Completo.

Consulte Análisis a petición para obtener una descripción completa de esta propiedad.

Utilizar analizador compacto MQRFH2C para dominio MQRFH2 No No Falso Esta propiedad controla si se utiliza el Analizador compacto MQRFH2C, en lugar del analizador MQRFH2, para las cabeceras MQRFH2.

En la tabla siguiente se describen las propiedades de las Opciones de analizador XMLNSC para el nodo JavaCompute.

Propiedad O C Valor por omisión Descripción
Utilizar analizador compacto XMLNSC para dominio XMLNS Deseleccionado No Inicio del cambioEstablecer esta propiedad hace que la cabecera MQRFH2 del mensaje de salida especifique el analizador XMLNS en lugar del XMLNSC, lo que permite que una aplicación externa permanezca sin cambios. Si los mensajes de salida no contienen cabeceras MQRFH2, esta propiedad no tiene ningún efecto.Fin del cambio
Modalidad de retención de contenido mixto No Ninguna Esta propiedad controla si el analizador XMLNSC crea elementos en el árbol de mensaje cuando encuentra texto mixto en un mensaje de entrada. Los valores válidos son Ninguno y Todos. Si se selecciona Todos, significa que se crean elementos para el texto mixto. Si se selecciona Ninguno, significa que el texto mixto se ignora y no se crea ningún elemento.
Modalidad de retención de comentarios No Ninguna Esta propiedad controla si el analizador XMLNSC crea elementos en el árbol de mensaje cuando encuentra comentarios en un mensaje de entrada. Los valores válidos son Ninguno y Todos. Si se selecciona Todos, significa que se crean elementos para los comentarios. Si se selecciona Ninguno, significa que se ignoran los comentarios y no se crean elementos.
Modalidad de retención de instrucciones de proceso No Ninguna Esta propiedad controla si el analizador XMLNSC crea elementos en el árbol de mensaje cuando encuentra instrucciones de proceso en un mensaje de entrada. Los valores válidos son Ninguno y Todos. Si se selecciona Todos, significa que se crean elementos para las instrucciones de proceso. Si se selecciona Ninguno, significa que se ignoran las instrucciones de proceso y no se crean elementos.

En la tabla siguiente se describen las propiedades de Descripción del nodo JavaCompute.

Propiedad O C Valor por omisión Descripción
Descripción corta No No   Descripción breve del nodo.
Descripción larga No No   Texto que describe la finalidad del nodo en el flujo de mensajes.
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
ac20805_