I ran the current version of WSDL2Java, and it appears that all of the files are properly generated.
ArrayBindingImpl.java ArrayService.java deploy.wsdd ArrayBindingSkeleton.java ArrayServiceLocator.java undeploy.wsdd ArrayBindingStub.java ArrayPort.java SOAPStruct.java Rich Scheuerle XML & Web Services Development 512-838-5115 (IBM TL 678-5115) R J Scheuerle Jr/Austin/IBM@IBM To: [EMAIL PROTECTED] US cc: [EMAIL PROTECTED] Subject: Re: AXIS alpha3 does not generate all classes 02/15/2002 09:10 PM Please respond to axis-user Christoph, Thanks for the note. The WSDL2Java only generates referenced types. It appears that you may have found a bug. The reference to ArrayOfSOAPStruct should cause SOAPStruct to be referenced and thus generated. 1) Could you verify that this problem occurs with the latest version of Axis. There have been several changes in the last month related to reference relationships. 2) Your wsdl definition of ArrayOfSOAPStruct is a little strange. You may want to get rid of the attribute element in the ArrayOfSOAPStruct complexType. Please send me a reply. I may have time to do further digging on Monday. Rich Scheuerle XML & Web Services Development 512-838-5115 (IBM TL 678-5115) Christoph Hartmann To: [EMAIL PROTECTED] <[EMAIL PROTECTED] cc: > Subject: AXIS alpha3 does not generate all classes 02/13/2002 01:01 PM Please respond to axis-user Hi, I have a problem with AXIS alpha3 not generating all java classes when using arrays of complex types: My WSDL file (please find array.wsdl as an attachement) contains a array definition as well as a complex type definition (which is the array base element). If I uncomment the comment-out parts all classes gets generated, but I really do not need the additional defined operation etc. If I leave the comments inside, some java source files are missing after the generation (according to the file system contents and compiler error messages). BTW: I use the following command (CLASSPATH includes the neccessary JAR files): $ java org.apache.axis.wsdl.Wsdl2java -s -o classes array.wsdl Any hints? Thanx, hardy <?xml version="1.0" encoding="UTF-8"?> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:SOAP-ENC=" http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://aaa.bbb/ccc/xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns=" http://aaa.bbb/ccc" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd ="http://www.w3.org/2001/XMLSchema" name="xyz" targetNamespace=" http://aaa.bbb/ccc"> <types> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://aaa.bbb/ccc/xsd"> <complexType xmlns=" http://www.w3.org/2001/XMLSchema" name="ArrayOfSOAPStruct"> <complexContent xmlns=" http://www.w3.org/2001/XMLSchema"> <restriction xmlns="http://www.w3.org/2001/XMLSchema" base="SOAP-ENC:Array"> <sequence xmlns="http://www.w3.org/2001/XMLSchema"> <element xmlns="http://www.w3.org/2001/XMLSchema" maxOccurs ="unbounded" name="item" type="s:SOAPStruct"/> </sequence> <attribute xmlns="http://www.w3.org/2001/XMLSchema" ref ="SOAP-ENC:arrayType" wsdl:arrayType="s:SOAPStruct[]"/> </restriction> </complexContent> </complexType> <complexType xmlns=" http://www.w3.org/2001/XMLSchema" name="SOAPStruct"> <sequence xmlns=" http://www.w3.org/2001/XMLSchema"> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varString" type="string"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varInt" type="int"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varFloat" type="float"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varBase64" type="base64Binary"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varDateTime" type="dateTime"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varDecimal" type="decimal"/> <element xmlns ="http://www.w3.org/2001/XMLSchema" name="varBoolean" type="boolean"/> </sequence> </complexType> </schema> </types> <!-- <message xmlns="http://schemas.xmlsoap.org/wsdl/" name=" _echoStructRequest"> <part name="inputStruct" type ="s:SOAPStruct"/> </message> <message xmlns=" http://schemas.xmlsoap.org/wsdl/" name="_echoStructResponse"> <part name ="return" type="s:SOAPStruct"/> </message> --> <message xmlns="http://schemas.xmlsoap.org/wsdl/" name ="echoStructArrayRequest"> <part name="inputStructArray" type ="s:ArrayOfSOAPStruct"/> </message> <message xmlns="http://schemas.xmlsoap.org/wsdl/" name ="echoStructArrayResponse"> <part name="return" type="s:ArrayOfSOAPStruct"/> </message> <portType xmlns="http://schemas.xmlsoap.org/wsdl/" name ="ArrayPort"> <!-- <operation name="_echoStruct" parameterOrder="inputStruct"> <input message="tns:_echoStructRequest" name="echoStruct"/> <output message="tns:_echoStructResponse" name ="echoStructResponse"/> </operation> --> <operation name="echoStructArray" parameterOrder ="inputStructArray"> <input message ="tns:echoStructArrayRequest" name="echoStructArray"/> <output message ="tns:echoStructArrayResponse" name="echoStructArrayResponse"/> </operation> </portType> <binding xmlns="http://schemas.xmlsoap.org/wsdl/" name ="ArrayBinding" type="tns:ArrayPort"> <soap:binding style="rpc" transport=" http://schemas.xmlsoap.org/soap/http"/> <!-- <operation name="_echoStruct"> <soap:operation soapAction="http://aaa.bbb/ccc/array/"/> <input> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/abc" use="encoded"/> </input> <output> <soap:body encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/" namespace=" http://tempuri.org/abc" use="encoded"/> </output> </operation> --> <operation name="echoStructArray"> <soap:operation soapAction=" http://aaa.bbb/ccc/array/"/> <input> <soap:body encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/" namespace=" http://tempuri.org/abc" use="encoded"/> </input> <output> <soap:body encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/" namespace=" http://tempuri.org/abc" use="encoded"/> </output> </operation> </binding> <service xmlns="http://schemas.xmlsoap.org/wsdl/" name ="ArrayService"> <port binding="tns:ArrayBinding" name="ArrayService"> <soap:address location=" http://localhost:8080/array/services/ArrayService"/> </port> </service> </definitions>