Error handling in GWS calls (status)

When errors are encountered, the methods of GWS classes can throw exceptions and set the status variable with the appropriate error number.

By default, the program will stop if an exception is thrown. You can trap the GWS errors with a WHENEVER ERROR handler or with a TRY/CATCH block. In the example, the readTextRequest() API is surrounded by a TRY/CATCH block:
DEFINE req com.HttpServiceRequest,
       data STRING
...
LET req = com.WebServiceEngine.getHTTPServiceRequest(5)
...
TRY
   ...
   CALL req.readTextRequest() RETURNING data
   ...
CATCH
   CALL show_err(SFMT("Unexpected HTTP request read exception: %1", status))
END TRY

For some errors, a human-readable description of the error code is available in the sqlca.sqlerrm register.