More About Breakpoints
The SOAP Debugger window is where you set and delete breakpoints. It is separated into two tabs (screenshot below).
The Function-Breakpoints tab allows you to set a breakpoint on Requests and/or Responses to SOAP methods. The debugger highlights the function which triggered the breakpoint. Data packets to and from the client are analyzed and matched to the corresponding functions from the WSDL file. If a breakpoint is set for a specific method, then this is where the SOAP debugger stops. The toolbar buttons are enabled at this point.
The data is displayed in the SOAP Request or SOAP Response document window. The SOAP documents displayed in the SOAP windows can be modified at this point. The data is sent the moment you click one of the toolbar icons (except for the Stop Server icon).
The Conditional-Breakpoints tab (screenshot below) allows you to use XPath expressions to define breakpoints. If a SOAP request causes an error, the SOAP response must contain a faultcode element. We therefore would like to have a breakpoint triggered whenever a faultcode element appears.
To add a conditional breakpoint, do the following:
|1.||Click the Conditional Breakpoints tab, and then the Add button. The dialog shown below appears.|
|2.||Enter the XPath expression (for example, .//faultcode) in the XPath field.|
|3.||Select the required XPath version (1.0 or 2.0) and the Break when XPath nodes found radio button.|
|4.||Click OK to confirm the settings. The SOAP debugger will stop whenever a .//faultcode element appears in a SOAP request or response.|
The various options in this dialog are described below:
•XPath expression field: Enter the specific XPath expression/node here. An XPath has to be entered here to be able to use any of the specific radio button options.
•Version: The XPath version you wish to use for the XPath expression.
•Break instruction radio buttons: The debuggers stops when the selected option occurs. The available options are: (i) Break when the targeted XPath node matches the value entered in this field; (ii) Break when the specified XPath node exists in the SOAP request or response; and (iii) Break when the specified XPath node does not exist in the SOAP request or response.
•Requests and Responses: Specifies whether the options in the dialog are to be applied in SOAP responses and/or requests.
•Functions: Either all methods/functions are scanned for the condition you define (Any function radio button) or you enter a a specific method/function to scan.
For the condition defined in the dialog displayed above, the following conditional breakpoint will be listed in the Conditional-Breakpoints tab.
Given below is a description of the columns in this tab:
•The Operation column contains the method/function being searched. If you selected the Any function radio button then this field remains empty. If you selected a specific method/function, then this method/function is displayed here.
•The XPath column contains the XPath expression you defined.
•The Value column contains the XPath value against which the returned nodes are checked for a match. If you selected Break on value, the specific string you entered is displayed here. If you selected Break when XPath nodes found, then <--Exist--> is displayed. If you selected Break when XPath nodes missing, then <--Missing--> is displayed.
•The In Requests and In Responses check boxes indicate where the condition is checked. You can change the settings by directly clicking the check box in the column.
To edit a conditional breakpoint, double-click its line in the tab or click the Change button (see screenshot above). To delete a conditional breakpoint, select the line you want to delete and click Delete.