estoy trabajando con webservices axis y necesito acceder a la respuesta de metodos que devuelven un tipo de dato Map (en java), ya los importe ahora no se como acceder a la informacion, la unidad que se genera es esta
Código Delphi
[-]
type
mapItem = class;
mapItem = class(TRemotable)
private
Fkey: Variant;
Fvalue: Variant;
published
property key: Variant read Fkey write Fkey;
property value: Variant read Fvalue write Fvalue;
end;
Map = array of mapItem;
ArrayOf_apachesoap_Map = array of Map;
Libretas = interface(IInvokable)
['{BC06A486-31BC-4F8E-303C-8640EC78FA68}']
function listarPlanes: ArrayOf_apachesoap_Map; stdcall;
ahora intente hacer lo sigt para ver la informacion
Código Delphi
[-]
var RIO:THTTPRIO;
puerto:Libretas;
lista:ArrayOf_apachesoap_Map;
m:Map;
mi:mapItem;
begin
RIO:=THTTPRIO.Create(nil);
RIO.URL:= 'http://127.0.0.1:8080/axis/Libretas.jws';
RIO.WSDLLocation:= 'http://127.0.0.1:8080/axis/Libretas.jws?WSDL';
RIO.Service:= 'LibretasService';
RIO.Port:='Libretas';
puerto:=RIO as Libretas;
lista:=puerto.listarPlanes;
m:=lista[0];
mi:=m[0] as TRemotable;
ShowMessage(mi.value);
deja compilar pero al ejecutarlo en esta parte sale mensaje de excepcion "acces violation", no se si el problema esta con los arrays creo q estoy accediendo mal, el ejemplo del metodo listarPlanes devuelve mas de un registro.
Gracias de antemano.