Apparently, the bug is known and a fix exists in the code.
When one creates the TRpcCaller, use this:
var cal : TRpcCaller ;
fun : TRpcFunction ;
res : IRpcResult ;
fields : IRpcArray ;
begin
cal := TRpcCaller.Create ;
cal.HostName := <your host> ;
cal.EndPoint := <your endpoint> ;
cal.FixEmptyStrings := True ; // This is the important point
fun := TRpcFunction.Create ;
fun.Clear ;
fun.ObjectMethod := <your method> ;
fields := TRpcArray.Create ;
fields.AddItem (<your params>) ;
<additional params>
try
res := cal.Execute (fun) ;
|