Thread

Posted on Fri Jun 6 14:54:26 2008 by arkadiyb
arrayType in WSDL
Hello all!
I am dealing with some older WSDL, and it has fragments like this:
<complexType name="ArrayOf_xsd_int"> <complexContent> <restriction base="soapenc:Array"> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:int[]"/> </restriction> </complexContent> </complexType>

When wsdl2perl processes this, I get
Can't locate object method "set_arrayType" via package "SOAP::WSDL::XSD::Attribute"
After looking for clues, I found this:
R2113 A MESSAGE containing serialized arrays MUST NOT include the soapenc:arrayType attribute. SOAP::WSDL does not natively support soapenc::arrayType.

Unfortunately, I cannot change the WSDL. Is there any way to teach SOAP::WSDL to handle this?
Direct Responses: 8033 | Write a response
Posted on Fri Jun 6 17:35:21 2008 by mkutter in response to 8032
Re: arrayType in WSDL
Hi arkadiyb,

unfortunately, there's no way. SOAP::WSDL is aimed at document/literal web services complying to the WS-I standard profile - and supporting SOAP encodings is way out of it's scope.
If your WSDL isn't too complex, you'll probably get along well with SOAP::Lite, which is targeted at rpc/encoded webservices (SOAP encodings are usually used in rpc/encoded web services). You may also want to try XML::Compile::SOAP.

Martin
Write a response