Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Rework client async callback to log an error on call failures. Allow empty argument to disable functionality. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
69e06af31666665be6cbd34bbdc0cbf0 |
User & Date: | oehhar 2019-11-20 18:44:54.404 |
Context
2019-11-26 18:36 | Fix variable error in error message for a response without the announced xml node check-in: cff5cb8be8 user: oehhar tags: trunk | |
2019-11-20 18:44 | Rework client async callback to log an error on call failures. Allow empty argument to disable functionality. check-in: 69e06af316 user: oehhar tags: trunk | |
2018-12-06 13:06 | Revert an optimisation which limits the argument list. The method may set multiple arguments. check-in: 58072a102f user: oehhar tags: trunk, Release_2.6.2 | |
Changes
Changes to ClientSide.tcl.
︙ | ︙ | |||
2050 2051 2052 2053 2054 2055 2056 | set body [::http::data $token] ::log::logsubst info {\nReceived: $body} set results {} if {[::http::status $token] ne {ok} || ( [::http::ncode $token] != 200 && $body eq {} )} { set errorCode [list WS CLIENT HTTPERROR [::http::code $token]] set hadError 1 | > | | | < < < < > > | | > | > < | | 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 | set body [::http::data $token] ::log::logsubst info {\nReceived: $body} set results {} if {[::http::status $token] ne {ok} || ( [::http::ncode $token] != 200 && $body eq {} )} { set errorCode [list WS CLIENT HTTPERROR [::http::code $token]] set hadError 1 set results [FormatHTTPError $token] set errorInfo "" } else { SaveAndSetOptions $serviceName set hadError [catch {parseResults $serviceName $operationName $body} results] RestoreSavedOptions $serviceName if {$hadError} { set errorCode $::errorCode set errorInfo $::errorInfo } } ::http::cleanup $token ## ## Call the appropriate callback ## if {$hadError} { set cmd $errorCmd lappend cmd $errorCode $errorInfo } else { set cmd $succesCmd } if {$cmd ne ""} { lappend cmd $results if {[catch $cmd cmdErr]} { ::log::log error "Error invoking callback '$cmd': $cmdErr" } } ## ## All done ## return } ########################################################################### # # Private Procedure Header - as this procedure is modified, please be sure # that you update this header block. Thanks. # |
︙ | ︙ |
Changes to docs/Calling_a_Web_Service.html.
︙ | ︙ | |||
283 284 285 286 287 288 289 | <P><B>Arguments :</B> </P><PRE> <I>serviceName</I> - The name of the Webservice <I>operationName</I> - The name of the Operation to call <I>argList</I> - The arguements to the operation as a dictionary object This is for both the Soap Header and Body messages. <I>succesCmd</I> - A command prefix to be called if the operations does not raise an error. The results, as a dictionary object are concatinated to the prefix. This includes | | > | | > | 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 | <P><B>Arguments :</B> </P><PRE> <I>serviceName</I> - The name of the Webservice <I>operationName</I> - The name of the Operation to call <I>argList</I> - The arguements to the operation as a dictionary object This is for both the Soap Header and Body messages. <I>succesCmd</I> - A command prefix to be called if the operations does not raise an error. The results, as a dictionary object are concatinated to the prefix. This includes both the return result and any return headers. Leave empty to not call any function. <I>errorCmd</I> - A command prefix to be called if the operations raises an error. The error code, stack trace and error message are concatinated to the prefix. Leave empty to not call any function. <I>headers</I> - Extra headers to add to the HTTP request. This is a key value list argument. It must be a list with an even number of elements that alternate between keys and values. The keys become header field names. Newlines are stripped from the values so the header cannot be corrupted. This is an optional argument and defaults to {}. |
︙ | ︙ |