Debe desplegar los archivos de que consta su proyecto de nodo
definido por el usuario en el área de trabajo
antes de que el nodo definido por el usuario esté listo para ser
utilizado. Puede hacerlo en un entorno de prueba utilizando PDE (Plug-in
Development Perspective) en el área de trabajo.
Utilice la opción Ejecutar >
Ejecutar como > Área de trabajo de ejecución para iniciar una
copia nueva del área de trabajo que incluya los
nodos adicionales. Para obtener más información acerca de esta perspectiva, consulte PDE Guide.
Deberá ver los nodos nuevos en la paleta cuando abra el editor de flujo de mensajes. Para comprobar el nodo nuevo, añádalo a un flujo de mensajes (consulte Adición de un nodo) y despliéguelo como lo hace de manera habitual. Cuando esté satisfecho con la definición del nodo, añada el nodo nuevo en la paleta de nodos normal del editor de flujos de mensajes (consulte Distribución de un nodo definido por el usuario). Hasta que lo haga, los nodos
nuevos estarán disponibles sólo en la sesión de prueba del área de trabajo.
Cuando haya establecido y desplegado un flujo de mensajes que contenga el nodo definido por el usuario y haya enviado un mensaje de prueba al mismo, tiene varias herramientas de diagnóstico a su disposición para determinar si el nodo funciona o, de no ser así, dónde está el error.
- Consulte el registro de sucesos (consulte Editor del registro de sucesos para obtener información).
- Añada un nodo Trace al flujo de mensajes y compruebe la salida del mismo (consulte Nodo Trace para obtener información acerca de los nodos
Trace).
- Utilice el depurador de flujos para depurar el flujo que contiene el nodo (consulte Prueba y depuración de aplicaciones de flujo de mensajes para obtener información).
Los siguientes mensajes de depuración
ayudan a entender la ejecución de los nodos y analizadores definidos por
el usuario:
- BIP2233 y BIP2234: un par de
mensajes de rastreo, antes y después de que se invoque una función de
implementación de extensión definida por el usuario. Estos mensajes
informan de los parámetros de entrada y el valor devuelto.
En estos mensajes, una "función de
implementación" puede interpretarse como una función de
implementación en C o un método de implementación de Java.
- BIP3904: un mensaje
de rastreo antes de llamar al método
Java evaluate() de un nodo definido por el usuario.
- BIP3905: un mensaje de
rastreo antes de invocar la función de implementación en C cniEvaluate() (miembro iFpEvaluate de
CNI_VFT) de un nodo definido por el usuario.
- BIP4142: un mensaje de depuración que se utiliza en
el rastreo cuando se invoca una función de utilidad de nodo definido
por el usuario, donde la función de utilidad altera el estado de un
elemento de sintaxis. Esto incluye todas las funciones de utilidad que
empiezan con cniSetElement*, donde * representa todos los
nodos con esa raíz.
- BIP4144 y BIP4145: un par de
mensajes de rastreo de ciertas funciones de implementación que, cuando las
invoca una extensión definida por el usuario, pueden modificar el estado
interno de un objeto de intermediario de mensajes. Los objetos posibles de
intermediario de mensajes incluyen elementos de sintaxis, nodos y
analizadores.
En estos mensajes, una "función de
implementación" puede interpretarse como una función de
implementación en C o un método de implementación de Java.
- BIP4146: un mensaje de depuración que se utiliza en
el rastreo cuando se invoca una función de utilidad de analizador definido por
el usuario, donde la función de utilidad altera el estado de un elemento
de sintaxis. Esto incluye todas las funciones de utilidad que empiezan con
cpiSetElement*, donde * representa todos los nodos con
esa raíz.
Para obtener más información sobre la API de nodo definida
por el usuario en lenguaje C, consulte
API de analizador definido por el usuario en lenguaje C y
API de nodo definido por el usuario en lenguaje C.
- BIP4147: un mensaje de
error de rastreo que aparece cuando una extensión definida por el usuario
pasa un objeto de entrada no válido a una función de API de utilidad de
extensión definida por el usuario.
- BIP4148: un mensaje de error
de rastreo que aparece cuando una extensión definida por el usuario
provoca daños en un objeto de intermediario.
- BIP4149: un mensaje de error
de rastreo que aparece cuando una extensión definida por el usuario pasa
un puntero de datos de entrada no válido a una función de API de utilidad de
extensión definida por el usuario.
- BIP4150: un mensaje de error
de rastreo que aparece cuando una extensión definida por el usuario pasa
datos de entrada no válidos a una función de API de utilidad de extensión
definida por el usuario.
- BIP4151: un mensaje de
depuración de rastreo que aparece cuando
cniGetAttribute2 o cniGetAttributeName2
establece el código de retorno en un valor inesperado. Los valores esperados son CCI_SUCCESS,
CCI_ATTRIBUTE_UNKNOWN y CCI_BUFFER_TOO_SMALL. Cualquier otro valor es un
valor inesperado.
- BIP4152: un mensaje de
depuración de rastreo que aparece en la situación siguiente:
- cniGetAttribute2 o
cniGetAttributeName2 establece el código de retorno en
CCI_BUFFER_TOO_SMALL.
- Se llama de nuevo a cniGetAttribute2 o
cniGetAttributeName2 con el tamaño correcto de
almacenamiento intermedio, pero el código de retorno se establece en
CCI_BUFFER_TOO_SMALL.
Consulte
Resolución de problemas con extensiones definidas por el usuario para obtener una lista completa de
las funciones de implementación.
Conecte el rastreo de usuario a nivel
de depuración para ver estas entradas de rastreo. Si desea más
información, consulte Utilización del rastreo.