|Just another Perl shrine|
SOAP::WSDL can't pass abstract complextypes (w/ wsdl2perl.pl bindings)by netpenthe (Initiate)
|on Mar 29, 2010 at 14:23 UTC||Need Help??|
netpenthe has asked for the
wisdom of the Perl Monks concerning the following question:
I realise that SOAP::WSDL can create WSDL types and ComplexTypes from ordinary Perl hashes/array and I have this working.
The problem is with abstract types, I used wsdl2perl.pl to generate the bindings for a WSDL but when I try to call a Web Service which has abstract types as parameters I get back:'faultstring' => 'Server was unable to read request. ---> There is an error in XML document (1, 492). ---> The specified type is abstract: name=
From what I understand I need to specifically set the concrete type of the data in the XML request using an "xsi:type" attribute ( i can see in the message it is sending that the "xsi:type" is NOT set).
I have no idea how to do this as I am just using hashes and arrays to pass the parameters (i.e. no where to specify a type!)
I'd be very grateful if anyone could point me in the right direction, i've been looking at this for about 10 hours now :(Thanks - xsi:type required for abstract types said here: http://osdir.com/ml/axis-dev-ws.apache.org/2009-04/msg00087.html