The wsdl is from a deployed axis service. Sorry, I guess I didn't make that part clear before. The problem isn't with the axis stubs (like I said before, .NET stubs fail too), it's with the axis service. I've attached as much of the source code as I can provide.
Dave Dunkin
-----Original Message-----
From: R J Scheuerle Jr [mailto:[EMAIL PROTECTED]]
Sent: Thursday, February 28, 2002 3:07 PM
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: array serialization problem (user error ?)
I took a serious look your ServiceOne.wsdl document, and it doesn't appear
to match your response files.
Here's a snippet of the response file:
<multiRef id="id1" SOAP-ENC:root="0"
xsi:type="ns3:ScreenOutputs__Table"
xmlns:ns3="http://output.getOrderData.ServiceOne.serviceone"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<_Record href=""#id2"/>
<_Record href=""#id3"/>
...
<multiRef />
<multiRef id="id2"
SOAP-ENC:root="0"
xsi:type="ns20:ScreenOutputs__Table__Record"
xmlns:ns20="http://output.getOrderData.ServiceOne.serviceone"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<order xsi:type="xsd:string">1</order>
....
</multiRef>
The response indicates that a _Record should be of type
"ns2:ScreenOutputs__Table__Record",
but in your wsdl you have _Record as type
="intf:ArrayOf_tns2_ScreenOutputs__Table__Record".
The numerous _Record fields indicate that it should have the maxOccurs
="unbounded" attribute.
Do the following:
1) Change the ScreenOutputs__Table to:
<complexType name="ScreenOutputs__Table">
<all>
<element name="_Record"
nillable="true" maxOccurs="unbounded"
type="tns2:ScreenOutputs__Table__Record"/>
</all>
</complexType>
2) Get rid of the complexType ArrayOf_tns2_ScreenOutputs__Table__Record.
3) Re-run WSDL2Java and try again.
Where did you get this WSDL ?
Rich Scheuerle
XML & Web Services Development
512-838-5115 (IBM TL 678-5115)
AxisBinding.tar.gz
Description: Binary data
