我在D7中通过向导生成了单元文件 其中的声明为:
getCustInfoResponse = class(TRemotable)
private
FgetCustInfoReturn: CustomerInformation;
public
constructor Create; override;
destructor Destroy; override;
published
property getCustInfoReturn: CustomerInformation read FgetCustInfoReturn write FgetCustInfoReturn;
end;CustomerInformation = class ()
private
address:WideString;
public
.....
end;getCustInfo = class(TRemotable)
private
FmobileNumber: WideString;
FopNumber: WideString;
public
constructor Create; override;
published
property mobileNumber: WideString read FmobileNumber write FmobileNumber;
property opNumber: WideString read FopNumber write FopNumber;
end;BossService = interface(IInvokable)
['{349F9CFF-3301-9902-EFB7-E4EAB8E4C04B}']
function getArrearage(const parameters: getArrearage): getArrearageResponse; stdcall;
end;function GetBossService(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): BossService;但是我在主程序部分这样写:
begin HTTPRIO.WSDLLocation:='http://192.168.100.28:9080/BOSSWS/services/BossService/wsdl/BossService.wsdl';
//temp:=GetBossService(true,'',HTTPRIO);
temp:=HTTPRIO as BossService;
Para1:=getCustInfo.Create; Para1.mobileNumber:='13702238903';
Para1.opNumber:='1860';
try
showmessage(temp.getCustInfo(Para1).getCustInfoReturn.address);
//程序执行到此处出错:'Invalid property element:1'
except
on e:Exception do
Raise Exception.Create(e.Message);
end;
FreeAndNil(Para1);
temp:=nil;
end;
帮帮忙有人能告诉我这是什么问题吗?
getCustInfoResponse = class(TRemotable)
private
FgetCustInfoReturn: CustomerInformation;
public
constructor Create; override;
destructor Destroy; override;
published
property getCustInfoReturn: CustomerInformation read FgetCustInfoReturn write FgetCustInfoReturn;
end;CustomerInformation = class ()
private
address:WideString;
public
.....
end;getCustInfo = class(TRemotable)
private
FmobileNumber: WideString;
FopNumber: WideString;
public
constructor Create; override;
published
property mobileNumber: WideString read FmobileNumber write FmobileNumber;
property opNumber: WideString read FopNumber write FopNumber;
end;BossService = interface(IInvokable)
['{349F9CFF-3301-9902-EFB7-E4EAB8E4C04B}']
function getArrearage(const parameters: getArrearage): getArrearageResponse; stdcall;
end;function GetBossService(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): BossService;但是我在主程序部分这样写:
begin HTTPRIO.WSDLLocation:='http://192.168.100.28:9080/BOSSWS/services/BossService/wsdl/BossService.wsdl';
//temp:=GetBossService(true,'',HTTPRIO);
temp:=HTTPRIO as BossService;
Para1:=getCustInfo.Create; Para1.mobileNumber:='13702238903';
Para1.opNumber:='1860';
try
showmessage(temp.getCustInfo(Para1).getCustInfoReturn.address);
//程序执行到此处出错:'Invalid property element:1'
except
on e:Exception do
Raise Exception.Create(e.Message);
end;
FreeAndNil(Para1);
temp:=nil;
end;
帮帮忙有人能告诉我这是什么问题吗?
客户端接收到的数据类型是继承了一次的