wsdl2java mix up order of elements and arrays in super constructor call http://issues.apache.org/jira/browse/AXIS-2545
Use the Axis 1.4 nightly build. I am using Nov 19 build and this was fixed. http://people.apache.org/dist/axis/nightly/axis-bin-1_4.zip ============================================================================ ===== -----Original Message----- From: Alexey Zavizionov [mailto:[EMAIL PROTECTED] Sent: Friday, 25 January 2008 11:08 PM To: [email protected] Cc: Roman Pedchenko; Gennady Azarenkov Subject: Re: Axis 1.4 WSDL4J wrong arguments sequence in generated classes Hi, WSDL2Java generates uncompilable code. Classes that inherite from some parent classes have the constructor parameters in the wrong order. Example: I have the exeption /home/alexey/java/eXoProjects/portlet-container/trunk/component/plugins/wsrp 2/target/generated/org/exoplatform/services/wsrp2/type/MarkupContext.java:[3 1,8] cannot find symbol symbol : constructor MimeResponse(java.lang.String,java.lang.Boolean) location: class org.exoplatform.services.wsrp2.type.MimeResponse Parent: <complexType name="MimeResponse"> <sequence> <element name="useCachedItem" type="xsd:boolean" default="false" minOccurs="0"/> </sequence> <attribute name="ccppProfileWarning" type="xsd:string" use="optional"/> </complexType> <element name="MimeResponse" type="types:MimeResponse"/> public class MimeResponse implements java.io.Serializable { public MimeResponse( java.lang.Boolean useCachedItem, java.lang.String ccppProfileWarning) { this.useCachedItem = useCachedItem; this.ccppProfileWarning = ccppProfileWarning; } Child: <complexType name="MarkupContext"> <complexContent> <extension base="types:MimeResponse"> <sequence> <element name="preferredTitle" type="xsd:string" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <element name="MarkupContext" type="types:MarkupContext"/> public class MarkupContext extends org.exoplatform.services.wsrp2.type.MimeResponse implements java.io.Serializable { public MarkupContext( java.lang.String ccppProfileWarning, java.lang.Boolean useCachedItem, java.lang.String preferredTitle) { super( ccppProfileWarning, useCachedItem); this.preferredTitle = preferredTitle; } Alexey. On Jan 24, 2008 6:27 PM, Alexey Zavizionov <[EMAIL PROTECTED]> wrote: > Hi, > > Please take a look at the issue. > That blocks my work! > > Thaks, > Alexey > > On Jul 10, 2007 10:05 AM, Alexey Zavizionov > > <[EMAIL PROTECTED]> wrote: > > Looks like a bug in axis1 1.4 > > > > The class MimeResponse generated correctly with attribute > > "ccppProfileWarning" as last parameter in constructor, but > > MarkupContext generated wrong, IMHO, because MarkupContext call super > > constructor with first (should be last) parameter "ccppProfileWarning" > > > > Any approvement from axis team? > > > > Regards, > > Alexey > > > > > > On 7/9/07, Max Shaposhnik <[EMAIL PROTECTED]> wrote: > > > > > > Hello, > > > trying to use Axis 1.4 for implementing some web service, but > > > got compile error as follows: > > > > > > part of wsdl schema: > > > ~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > <complexType name="MimeResponse"> > > > <sequence> > > > <element name="useCachedItem" type="xsd:boolean" > > > default="false" minOccurs="0"/> > > > <element name="mimeType" type="xsd:string" > > > minOccurs="0"/> > > > <element name="itemString" type="xsd:string" > > > minOccurs="0"/> > > > <element name="itemBinary" type="xsd:base64Binary" > > > minOccurs="0"/> > > > <element name="locale" type="xsd:string" > > > minOccurs="0"/> > > > <element name="requiresRewriting" type="xsd:boolean" > > > default="false" minOccurs="0"/> > > > <element name="cacheControl" type="types:CacheControl" > > > minOccurs="0"/> > > > <element name="extensions" type="types:Extension" > > > minOccurs="0" maxOccurs="unbounded"/> > > > </sequence> > > > <attribute name="ccppProfileWarning" type="xsd:string" > > > use="optional"/> > > > </complexType> > > > <element name="MimeResponse" type="types:MimeResponse"/> > > > > > > <complexType name="MarkupContext"> > > > <complexContent> > > > <extension base="types:MimeResponse"> > > > <sequence> > > > <element name="preferredTitle" type="xsd:string" > > > minOccurs="0"/> > > > </sequence> > > > </extension> > > > </complexContent> > > > </complexType> > > > <element name="MarkupContext" type="types:MarkupContext"/> > > > ~~~~~~~~~~~~~~~~~~~~~~~~ > > > > > > > > > > > > Output code ( look for super() constructor ): > > > ~~~~~~~~~~~~~~~~~~~~~~~~ > > > > > > public class MarkupContext extends > > > org.mycompany.services.wsrp.type.MimeResponse implements > > > java.io.Serializable { > > > private java.lang.String preferredTitle; > > > > > > public MarkupContext() { > > > } > > > > > > public MarkupContext( > > > java.lang.String ccppProfileWarning, > > > java.lang.Boolean useCachedItem, > > > java.lang.String mimeType, > > > java.lang.String itemString, > > > byte[] itemBinary, > > > java.lang.String locale, > > > java.lang.Boolean requiresRewriting, > > > org.exoplatform.services.wsrp.type.CacheControl cacheControl, > > > org.exoplatform.services.wsrp.type.Extension[] extensions, > > > java.lang.String preferredTitle) { > > > super( > > > ccppProfileWarning, > > > useCachedItem, > > > mimeType, > > > itemString, > > > itemBinary, > > > locale, > > > requiresRewriting, > > > cacheControl, > > > extensions); > > > this.preferredTitle = preferredTitle; > > > } > > > > > > > > > > > > and here is MimeResponse constructor: > > > > > > public MimeResponse( > > > java.lang.Boolean useCachedItem, > > > java.lang.String mimeType, > > > java.lang.String itemString, > > > byte[] itemBinary, > > > java.lang.String locale, > > > java.lang.Boolean requiresRewriting, > > > org.exoplatform.services.wsrp.type.CacheControl cacheControl, > > > org.exoplatform.services.wsrp.type.Extension[] extensions, > > > java.lang.String ccppProfileWarning) { > > > this.useCachedItem = useCachedItem; > > > this.mimeType = mimeType; > > > this.itemString = itemString; > > > this.itemBinary = itemBinary; > > > this.locale = locale; > > > this.requiresRewriting = requiresRewriting; > > > this.cacheControl = cacheControl; > > > this.extensions = extensions; > > > this.ccppProfileWarning = ccppProfileWarning; > > > } > > > ~~~~~~~~~~~~~~~~~~~~~~~~ > > > > > > > > > As you can see, the sequence of arguments is not match. Is it inheritance > > > problem? > > > Tnx for any suggestions. > > > > > > > > > -- > > > View this message in context: http://www.nabble.com/Axis-1.4-WSDL4J-wrong-arguments-sequence-in-generated- classes-tf4049803.html#a11503152 > > > Sent from the Axis - User mailing list archive at Nabble.com. > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
