I use WSDLtoJava to generate stubs from the following WSDL file:
http://devel.responsivesolutions.net/wmg/main/ws_pull_shipping_info.php?wsdl
Compile and test and I get the following exception:
......
- Could not convert [[Ljava.lang.Object; to bean field 'packages', type [Lcom.b1.net.fulfillment._package;
- Exception:
java.lang.ArrayStoreException
at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:175)
at org.apache.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:260)
at org.apache.axis.encoding.ser.ArrayDeserializer.valueComplete(ArrayDeserializer.java:544)
at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:502)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:942)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:206)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:241)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)
at org.apache.axis.client.Call.invoke(Call.java:1871)
at org.apache.axis.client.Call.invoke(Call.java:1777)
at org.apache.axis.client.Call.invoke(Call.java:1315)
at com.b1.net.fulfillment.PullShippingBindingStub.retrieve_Shipping_Order_Number(PullShippingBindingStub.java:142)
.....
Heres what I get back and where it fails. I'm going to guess that the packages node is defined incorrectly. Is this correct?
HTTP/1.1 200 OK
Date: Wed, 11 Jun 2003 21:07:59 GMT
Server: NuSOAP Server v0.6.4
Accept-Ranges: bytes
X-Powered-By: PHP/4.3.1
Status: 200 OK
Connection: Close
Content-Length: 1684
Content-Type: text/xml; charset=UTF-8
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:si="http://soapinterop.org/xsd" xmlns:tns="http://devel.responsivesolutions.net/wmg/base/ws_pull_shipping_info.wsdl">
<SOAP-ENV:Body>
<retrieve_shipping_order_numberResponse>
<return xsi:type="tns:order_shipping_info">
<order_number xsi:type="xsd:string">006100000033</order_number>
<ref_id xsi:type="xsd:string">1234567890</ref_id>
<packages xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="SOAP-ENC:Array[3,3]">
<item>
<ship_date xsi:type="xsd:string">2003-03-18 10:38:09.929933-05</ship_date>
<tracking_number xsi:type="xsd:string">1234567890</tracking_number>
<shipping_charge xsi:type="xsd:string">10.00</shipping_charge>
<package_weight xsi:type="xsd:string">5.00</package_weight>
</item>
<item>
<ship_date xsi:type="xsd:string">2003-06-06 11:38:09.929933-04</ship_date>
<tracking_number xsi:type="xsd:string">1234567891</tracking_number>
<shipping_charge xsi:type="xsd:string">11.00</shipping_charge>
<package_weight xsi:type="xsd:string">6.00</package_weight>
</item>
<item>
<ship_date xsi:type="xsd:string">2003-06-06 11:38:09.929933-04</ship_date>
<tracking_number xsi:type="xsd:string">1234567892</tracking_number>
<shipping_charge xsi:type="xsd:string">11.00</shipping_charge>
<package_weight xsi:type="xsd:string">6.00</package_weight>
</item>
</packages>
</return>
</retrieve_shipping_order_numberResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>