Jump to content

mraiha

Members
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutral
  1. mraiha

    Long standing SOAP bug, please vote

    Sorry for my bad English. Reproducing needs true SOAP server. If in WSDL there is property type Class(TXSDate) it can be null, so when trying to convert it to Date OptToSoapConv fails. Why this happens is that in code TSOAPDomConv.SetObjectPropFromText Date kind is expected to be tkFloat. But some how it's PropType is not TDateTime. So Trying to convert it to Float fails. How we fixed it years ago was that in code procedure TSOAPDomConv.SetObjectPropFromText(Instance: TObject; PropInfo: PPropInfo; const SoapData: InvString); we make this: tkFloat: begin if PropInfo.PropType^ = TypeInfo(TDateTime) then begin {Fix begins} E := XMLTimeToDateTime(SoapData); SetFloatProp(Instance, PropInfo, E); end else try E := StrToFloatEx(SoapData); SetFloatProp(Instance, PropInfo, E); except VarClear(V); SetVariantProp(Instance,PropInfo, V); end; {Fix ends} end; There was other places too. This problem was even in Delphi 2007.
×