Index: ClientSide.tcl ================================================================== --- ClientSide.tcl +++ ClientSide.tcl @@ -909,22 +909,22 @@ set currentBaseUrl $url switch -exact -- [dict get [::uri::split $url] scheme] { file { upvar #0 [::uri::geturl $url] token - set wsdlInfo [ParseWsdl $token(data) -headers [string map {\{ \" \} \"} $headers] -serviceAlias $serviceAlias] + set wsdlInfo [ParseWsdl $token(data) -headers $headers -serviceAlias $serviceAlias] unset token } http - https { if {[llength $headers]} { - set token [::WS::Utils::geturl_followRedirects $url -headers [string map {\{ \" \} \"} $headers]] + set token [::WS::Utils::geturl_followRedirects $url -headers $headers] } else { set token [::WS::Utils::geturl_followRedirects $url] } ::http::wait $token - set wsdlInfo [ParseWsdl [::http::data $token] -headers [string map {\{ \" \} \"} $headers] -serviceAlias $serviceAlias] + set wsdlInfo [ParseWsdl [::http::data $token] -headers $headers -serviceAlias $serviceAlias] ::http::cleanup $token } default { return \ -code error \ @@ -1275,12 +1275,12 @@ } if {[dict exists $serviceInfo operation $operationName action]} { lappend headers SOAPAction [format {"%s"} [dict get $serviceInfo operation $operationName action]] } if {[llength $headers]} { - ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] - set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] + ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] + set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] } else { ::log::log info [::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] } ::http::wait $token @@ -1403,12 +1403,12 @@ } if {[dict exists $serviceInfo operation $operationName action]} { lappend headers SOAPAction [format {"%s"} [dict get $serviceInfo operation $operationName action]] } if {[llength $headers]} { - ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] - set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] + ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] + set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] } else { ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] ] set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] ] } ::http::wait $token @@ -1566,17 +1566,17 @@ if {[llength $headers]} { ::log::log info [list \ ::http::geturl $url \ -query $query \ -type [dict get $serviceInfo contentType] \ - -headers [string map {\{ \" \} \"} $headers] \ + -headers $headers \ -command [list ::WS::Client::asyncCallDone $serviceName $operationName $succesCmd $errorCmd] \ ] ::http::geturl $url \ -query $query \ -type [dict get $serviceInfo contentType] \ - -headers [string map {\{ \" \} \"} $headers] \ + -headers $headers \ -command [list ::WS::Client::asyncCallDone $serviceName $operationName $succesCmd $errorCmd] } else { ::log::log info [list \ ::http::geturl $url \ -query $query \ @@ -3148,12 +3148,12 @@ } if {[dict exists $serviceInfo headers]} { set headers [concat $headers [dict get $serviceInfo headers]] } if {[llength $headers]} { - ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] - set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] + ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] + set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] } else { ::log::log [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] } ::http::wait $token @@ -3273,12 +3273,12 @@ } if {[dict exists $serviceInfo headers]} { set headers [concat $headers [dict get $serviceInfo headers]] } if {[llength $headers]} { - ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] - set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers [string map {\{ \" \} \"} $headers]] + ::log::log info [list ::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] + set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType] -headers $headers] } else { ::log::log info [list::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] set token [::http::geturl $url -query $query -type [dict get $serviceInfo contentType]] } ::http::wait $token @@ -3385,11 +3385,11 @@ proc ::WS::Client::DoRestAsyncCall {serviceName objectName operationName argList succesCmd errorCmd {headers {}}} { variable serviceArr set svcHeaders [dict get $serviceArr($serviceName) headers] if {[llength $svcHeaders]} { - lappend headers $svcHeaders + set headers [concat $headers $svcHeaders] } ::log::log debug "Entering ::WS::Client::DoAsyncRestCall [list $serviceName $objectName $operationName $argList $succesCmd $errorCmd $headers]" if {![info exists serviceArr($serviceName)]} { return \ -code error \ @@ -3417,17 +3417,17 @@ if {[llength $headers]} { ::log::log info [list \ ::http::geturl $url \ -query $query \ -type [dict get $serviceInfo contentType] \ - -headers [string map {\{ \" \} \"} $headers] \ + -headers $headers \ -command [list ::WS::Client::asyncRestCallDone $serviceName $operationName $succesCmd $errorCmd] \ ] ::http::geturl $url \ -query $query \ -type [dict get $serviceInfo contentType] \ - -headers [string map {\{ \" \} \"} $headers] \ + -headers $headers \ -command [list ::WS::Client::asyncRestCallDone $serviceName $operationName $succesCmd $errorCmd] } else { ::log::log info [list \ ::http::geturl $url \ -query $query \