Timeouts
Timeouts are the easiest to handle simply by setting the wwSOAP object's nHTTPConnectTimeout property to x number of seconds.
oSOAP = CREATE("wwSOAP")
oSOAP.nHTTPConnectTimeout = 60
The default is 15 seconds which works fine for most typical transactional Web Services but will be too short for longer operating Web Services.
Custom wwHTTP Object
For full control over the HTTP protocol used with the SOAP client you can create an HTTP object and assign that to the SOAP object. Using this approach you can set request timeout, Proxy settings, authentication and more:
oHTTP = CREATE("wwHTTP")
*** Examples of some things you might set - Note not all are required of course
oHTTP.nHTTPConnectTimeout = 5
oHTTP.cUsername = "rstrahl"
oHTTP.cPassword = "whatever"
oHTTP.nHTTPConnectMode = 3 && Proxy
oHTTP.cHTTPProxyName = "proxy-server.hawaii.rr.com"
oHTTP.cHTTPProxyUsername = "rstrahl"
oHTTP.cHTTPProxyPassword = "whatever"
*** Other custom stuff
oHTTP.nHttpServiceFlags = INTERNET_FLAG_IGNORE_CERT_DATE_INVALID + INTERNET_FLAG_IGNORE_CERT_CN_INVALID
oSOAP = CREATE("wwSOAP")
oSOAP.oHTTP = oHTTP
oSOAP.AddParameter("lcType","ALL")
lcXML = oSOAP.CallWSDLMethod("GetTypes","http://www.foxcentral.net/foxcentral.wsdl")