Desarrollo de extensiones definidas por el usuario

Este apartado contiene detalles sobre cómo implementar un nodo o analizador definido por el usuario para mejorar la funcionalidad de WebSphere Message Broker.

Puede escribir los nodos definidos por el usuario en C o Java. Los analizadores definidos por el usuario sólo puede escribirlos en C. Para obtener información sobre el diseño y la creación de nodos definidos por el usuario y analizadores definidos por el usuario, consulte los temas siguientes:

Los archivos que crea y, a continuación, distribuye son:

En sistemas Windows, una biblioteca de enlaces dinámicos (DLL), cuyo nombre tiene un tipo de archivo de '.lil'.

En sistemas Linux, un objeto compartido, también con un tipo de archivo de '.lil'.

En sistemas UNIX, un objeto compartido, también con un tipo de archivo de '.lil'.

En z/OS, un objeto compartido, con un tipo de archivo de '.lil'.

Para nodos Java, un archivo JAR (Java Archive), con un tipo de archivo de '.jar'.

Una extensión en C definida por el usuario implementa una fábrica de nodos o analizadores que puede soportar varios tipos de nodo o analizador. Para obtener más información, consulte el comportamiento de la fábrica de nodos y analizadores. Los usuarios de Java no necesitan escribir una fábrica de nodos.

El sistema carga la extensión definida por el usuario cuando se inicializa el intermediario. Esto invoca las funciones de registro en la extensión definida por el usuario para que el intermediario sepa qué nodos o analizadores soporta la extensión definida por el usuario.

Sólo para nodos definidos por el usuario, el desarrollador debe crear un plug-in de trabajo así como un archivo LIL o JAR de ejecución. Esto añade el nodo definido por el usuario a la paleta de nodos el editor de flujos de mensajes y permite que se utilice el nodo nuevo en los flujos de mensajes. Consulte Creación de la representación de la interfaz de usuario de un nodo definido por el usuario en el entorno de trabajo para obtener más detalles. Este paso no es necesario para los analizadores definidos por el usuario.

Hay algunas limitaciones y factores a tener en cuenta al desarrollar extensiones definidas por el usuario:
  • No se soporta el intercambio de información de un nodo C definido por el usuario en Java y su reinicio en JNI. Esto se debe a que el intermediario inicializa internamente una JVM, que no está disponible mediante la interfaz de extensión definida por el usuario. La JVM se inicializa con varios parámetros que son específicos de los requisitos del intermediario. Dado que sólo hay una JVM en un proceso, estos parámetros los especifica quien la inicialice primero. Si un nodo definido por el usuario utiliza Java y el intermediario se inicializa primero, es posible que estos parámetros no sean adecuados para el nodo definido por el usuario. Si el nodo definido por el usuario crea la JVM antes de que se inicie el intermediario, es posible que el intermediario no funciones correctamente.
  • Los nodos definidos por el usuario se pueden desplegar en WebSphere Event Broker. Al crear nodos definidos por el usuario para usuarios de WebSphere Event Broker, debe asegurarse de que éstos no tengan la posibilidad de evaluar el código ESQL. Por ejemplo, los nodos que muestran la entrada en MbSQLStatement como una propiedad de nodo, estarían realmente emulando un nodo Compute. No se da soporte al uso de ESQL en WebSphere Event Broker.
  • Los nodos de entrada definidos por el usuario sólo pueden dar soporte a los analizadores MQ, XML y BLOB.
  • Evite el uso de funciones específicas del sistema operativo. De esta manera, las extensiones definidas por el usuario podrán funcionar en varias plataformas sin tener que modificar el código fuente.

La tabla siguiente muestra los temas que debe consultar según el tipo de extensión definida por el usuario que desee crear:

Acción Temas que consultar
Para utilizar uno de los nodos Java de ejemplo:
  1. Compilación de un nodo Java definido por el usuario
  2. Instalación de una extensión definida por el usuario en un dominio de intermediarios
  3. Creación de la representación de la interfaz de usuario de un nodo definido por el usuario en el entorno de trabajo
  4. Comprobación de un nodo definido por el usuario
Para utilizar uno de los nodos C de ejemplo:
  1. Compilación de una extensión C definida por el usuario
  2. Instalación de una extensión definida por el usuario en un dominio de intermediarios
  3. Creación de la representación de la interfaz de usuario de un nodo definido por el usuario en el entorno de trabajo
  4. Comprobación de un nodo definido por el usuario
Para utilizar el analizador de ejemplo:
  1. Compilación de una extensión C definida por el usuario
  2. Instalación de una extensión definida por el usuario en un dominio de intermediarios
Para crear un nodo Java propio utilizando el entorno de trabajo:
  1. Creación de un nodo de entrada en Java o Creación de un nodo de proceso de mensajes o de salida en Java
  2. Utilización del registro de sucesos desde una extensión definida por el usuario
  3. Compilación de un nodo Java definido por el usuario
  4. Comprobación de un nodo definido por el usuario
  5. Distribución de una extensión definida por el usuario
Para crear un nodo C propio:
  1. Creación de un nodo de entrada en C o Creación de un nodo de proceso de mensajes o de salida en C
  2. Utilización del registro de sucesos desde una extensión definida por el usuario
  3. Compilación de una extensión C definida por el usuario
  4. Instalación de una extensión definida por el usuario en un dominio de intermediarios
  5. Creación de la representación de la interfaz de usuario de un nodo definido por el usuario en el entorno de trabajo
  6. Comprobación de un nodo definido por el usuario
  7. Distribución de una extensión definida por el usuario
Para crear un analizador propio:
  1. Creación de un analizador en C
  2. Utilización del registro de sucesos desde una extensión definida por el usuario
  3. Compilación de una extensión C definida por el usuario
  4. Instalación de una extensión definida por el usuario en un dominio de intermediarios
Conceptos relacionados
Extensiones definidas por el usuario
Referencia relacionada
Extensiones definidas por el usuario
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
as09940_