If only to play my own devil’s advocate, I wanted to see what Java2WSDL in the Axis 1.1 RC2 would do with a Java collections interface/class (Collection, ArrayList, Set, etc.). So I added this method to my interface to publish: public Collection getCollection();
Somewhat to my chagrin, Java2WSDL did not complain. However, neither did it produce a WSDL that quite makes sense to me. Below are the highlights of what Java2WSDL produced: <wsdl:definitions ... xmlns:tns3="http://www.w3.org/2002/12/soap-encoding" ...> ... <schema targetNamespace="http://www.w3.org/2002/12/soap-encoding" xmlns="http://www.w3.org/2001/XMLSchema"> ___<import namespace="http://schemas.xmlsoap.org/soap/encoding/" /> ___<complexType name="Array"> ______<complexContent> _________<restriction base="soapenc:Array"> ____________<attribute ref="soapenc:arrayType" wsdl:arrayType="" /> _________</restriction> ______</complexContent> ___</complexType> </schema> ... <wsdl:message name="getCollectionResponse"> ___<wsdl:part name="getCollectionReturn" type="tns3:Array" /> </wsdl:message> Observations/questions: * I had never seen before in a WSDL the namespace: http://www.w3.org/2002/12/soap-encoding Why the need to introduce this namespace in this situation? * There’s a newly produced tns3:Array complex type. And this new type has under its restriction an attribute wsdl:arrayType=“”. It seems to me this blank should be filled in, but how? * Is there something else I need to do to get this to work? Thanks.