Internet Technologies:waa

Debugging Web applications Professional

When you have implemented both the start-up HTML page and your Web application, you should test their functionality before "going public". This is accomplished by starting a Web browser and loading the HTML page of your new Web application. Test the functionality of the HTML page first and submit the form. When you get a correct response from the package DLL, it is most likely that your Web application functions correctly. However, there is always a chance to have overlooked a possible error condition and you might get as a response from the WAA server a message about a runtime error that occurred in your package DLL. It includes the following information:

Error message from Alaska Software's Web Application Adaptor 
Package [DLL NAME] has failed to fulfill the request of form [FUNCTION]. 

The following error occurred at package execution: 
Error: [DESCRIPTION] 
Operation: [DESCRIPTION] 
[CALL STACK] 

Please consult the WebAdministrator of this site! 

When a runtime error occurs in your package DLL, it is handled by the WAA server. An HTML page is assembled containing information about the error condition and in which line of your PRG code the error was raised. This information is sufficient in most cases to correct the PRG code.

In some cases, though, runtime errors are hard to isolate and require to step through the source code using a debugger. If this is the case, you must load the WAA1SRV.EXE binary into the Xbase++ debugger and press F5 to run the WAA server. The debugger interrupts the startup sequence of WAA1SRV.EXE each time a package DLL is loaded and waits in the _Register() function for your input. To start the WAA1SRV.EXE with the Xbase++ debugger, execute following line from the commandline:

STARTWAA.BAT XppDbg.exe 

Now you can set break points in your PRG code and press F5 again until the WAA server is up and running. If you submit the form again from the Web browser, the debugger interrupts the execution of your Web application at the first break point it runs into. From here on you proceed as usual when debugging an Xbase++ application.

Feedback

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.