Tenga presente las siguientes restricciones y factores al desarrollar nodos definidos por el usuario:
- El intercambio de información de un nodo definido por el usuario de C con Java™ y proporcionar un
derivador JNI no está soportado. Esta restricción
existe porque 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 diversos parámetros que son específicos de los requisitos del intermediario. Dado que sólo existe 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, estos parámetros pueden no ser
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, el
intermediario puede no funcionar correctamente.
- Los nodos de entrada definidos por el usuario sólo pueden dar
soporte a los analizadores XML, BLOB y
WebSphere MQ.
- Evite utilizar funciones que sean específicas de un sistema operativo. Si
codifica de esta manera, sus extensiones definidas por el usuario pueden
funcionar en varias plataformas sin tener que realizar cambios en el
código fuente.
- Coloque siempre un nodo definido por el usuario en un esquema no predeterminado porque un nodo definido por el usuario de un esquema de intermediario lo conocen otros flujos de mensajes por su nombre calificado de esquema. Por ejemplo, si un nodo definido por el usuario se denomina ErrorHandler y es un esquema de intermediario com.ibm.mb.toolkit, se hará referencia al mismo como com.ibm.mb.toolkit.ErrorHandler. Si un segundo proveedor también tiene un manejador de errores denominado ErrorHandler y se encuentra en el esquema de intermediario
com.xxx.product, se hará referencia al mismo como com.xxx.product.ErrorHandler. Un nodo definido por el usuario en un esquema predeterminado se direcciona solamente mediante su nombre. Por lo tanto, si hay dos proveedores distintos que desarrollan dos manejadores de error no relacionado y ambos se denominan ErrorHandler y se encuentran en un esquema predeterminado, cuando ambos nodos definidos por el usuario estén en el espacio de plug-in de un tercer usuario, la referencia a ErrorHandler resultará ambigua.
- Si desea utilizar un subflujo para crear un nodo definido por el usuario, lea la sección de limitaciones del tema siguiente: Utilización de un subflujo como nodo definido por el usuario.
Para implementar un nodo definido por el
usuario, complete las tareas siguientes en el orden especificado: