Más información sobre puntos de interrupción
La ventana Depurador SOAP incluye dos pestañas donde puede establecer y eliminar puntos de interrupción (imagen siguiente).
Pestaña Puntos de interrupción de función
En esta pestaña puede establecer puntos de interrupción en las solicitudes y respuestas a métodos SOAP. El depurador resalta la función que desencadenó el punto de interrupción. Los paquetes de datos recibidos/enviados por el cliente se analizan y se casan con las funciones correspondientes del archivo WSDL. Si se establece un punto de interrupción para un método concreto, el depurador se detiene en este método. En ese momento se habilitan los botones de la barra de herramientas.
Los datos aparecen en las ventanas Solicitud SOAP y Respuesta SOAP. Los documentos SOAP que aparecen en estas ventanas ahora se pueden modificar. Los datos se envían en cuanto haga clic en uno de los iconos de la barra de herramientas (excepto si es el icono Detener servidor proxy).
Pestaña Puntos de interrupción condicionales
En esta pestaña (imagen siguiente) puede usar expresiones XPath para definir puntos de interrupción. Si una solicitud SOAP causa un error, la respuesta SOAP debe contener un elemento faultcode Por tanto, creamos un punto de interrupción que se desencadena cada vez que aparezca un elemento faultcode.
Para añadir un punto de interrupción condicional:
1. | Seleccione la pestaña Puntos de interrupción condicionales y haga clic en el botón Agregar. Aparece este cuadro de diálogo. |
2. | Escriba la expresión XPath (p.ej. .//faultcode) en el campo XPath. |
3. | Seleccione la versión de XPath que desea usar (1.0/2.0) y el botón de opción Detenerse cuando se encuentren nodos XPath. |
4. | Haga clic en Aceptar para confirmar la configuración. El depurador SOAP se detendrá cada vez que aparezca el elemento .//faultcode en una solicitud o respuesta SOAP. |
Estas son las opciones disponibles en el cuadro de diálogo anterior:
•XPath: escriba aquí la expresión/el nodo XPath. Para poder seleccionar uno de los botones de opción es necesario introducir aquí una expresión XPath.
•Versión: la versión de XPath que desea usar para la expresión.
•Botones de interrupción: el depurador se detiene cuando encuentra la opción seleccionada. Las opciones son: (i) detenerse cuando el nodo XPath coincida con el valor introducido en este campo, (ii) detenerse cuando el nodo XPath exista en la solicitud o respuesta SOAP y (iii) detenerse cuando el nodo XPath no exista en la solicitud ni en la respuesta SOAP.
•Solicitudes/Respuestas: estas casillas permite definir si las opciones del cuadro de diálogo se aplican a respuestas o solicitudes SOAP.
•Función: decida si la condición definida se busca en todos los métodos/funciones (Cualquier función) o en una función/un método concreto.
Para la condición definida en la imagen anterior se crea este punto de interrupción condicional en la pestaña Puntos de interrupción condicionales:
Estas son las columnas de la pestaña Puntos de interrupción condicionales:
•La columna Operación contiene el método/la función que se debe buscar. Si seleccionó la opción Cualquier función en el cuadro de diálogo anterior, esta columna estará vacía. Si definió un método/una función en el cuadro de diálogo, el método/la función aparece en esta columna.
•La columna XPath contiene la expresión XPath definida.
•La columna Value contiene el valor XPath con el que se comparan los nodos devueltos. Si seleccionó la opción Detenerse en el valor en el cuadro de diálogo, el valor indicado aparece en esta columna. Si seleccionó Detenerse cuando se encuentren nodos XPath, en la columna aparece la cadena <--Exist-->. Si seleccionó la opción Detenerse cuando falten nodos XPath, aparece la cadena <--Missing-->.
•Las casillas En solicitudes y En respuestas indican dónde se debe buscar la condición. Estas casillas se pueden modificar en esta pestaña directamente.
Para editar un punto de interrupción condicional haga doble clic en el su fila o haga clic en el botón Modificar (imagen anterior). Para eliminar un punto de interrupción condicional, selecciónelo y haga clic en el botón Eliminar.