You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Mark Ayzenshtat (JIRA)" <ax...@ws.apache.org> on 2005/03/14 20:41:27 UTC
[jira] Created: (AXIS-1873) JavaBeanWriter reorders variable names in generated constructors
JavaBeanWriter reorders variable names in generated constructors
----------------------------------------------------------------
Key: AXIS-1873
URL: http://issues.apache.org/jira/browse/AXIS-1873
Project: Axis
Type: Bug
Components: WSDL processing
Versions: 1.2RC3
Environment: The WSDL2Java tool in Axis 1.2RC3
Reporter: Mark Ayzenshtat
Parameter lists in constructors generated using WSDL2Java are now sorted alphabetically by variable name instead of having the order specified by the WSDL. Although this behavior seems to result from a specific change (see diff link below), it strikes me as a bug. I very much expect the variable order to be consistent with the WSDL, and this change not only breaks client code but disrupts intentional, logical ordering of parameters.
Here's the change:
http://cvs.apache.org/viewcvs.cgi/ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaBeanWriter.java?r1=1.71&r2=1.72
Consider the public WSDL: https://adwords.google.com/api/adwords/v2/AccountService?WSDL
The "Address" type consists of the following elements:
<element name="name" type="xsd:string"/>
<element name="companyName" type="xsd:string"/>
<element name="addressLine1" type="xsd:string"/>
<element name="addressLine2" nillable="true" type="xsd:string"/>
<element name="city" type="xsd:string"/>
<element name="state" nillable="true" type="xsd:string"/>
<element name="postalCode" type="xsd:string"/>
<element name="countryCode" type="xsd:string"/>
<element name="phoneNumber" type="xsd:string"/>
<element name="faxNumber" nillable="true" type="xsd:string"/>
It makes sense to have address, city, state, postal code, and country code listed in that order. Unfortunately, WSDL2Java now produces a constructor with the following parameter list:
java.lang.String addressLine1,
java.lang.String addressLine2,
java.lang.String city,
java.lang.String companyName,
java.lang.String countryCode,
java.lang.String faxNumber,
java.lang.String name,
java.lang.String phoneNumber,
java.lang.String postalCode,
java.lang.String state
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
[jira] Resolved: (AXIS-1873) JavaBeanWriter reorders variable names in generated constructors
Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
[ http://issues.apache.org/jira/browse/AXIS-1873?page=history ]
Davanum Srinivas resolved AXIS-1873:
------------------------------------
Resolution: Fixed
Reverted my change.
thanks,
dims
> JavaBeanWriter reorders variable names in generated constructors
> ----------------------------------------------------------------
>
> Key: AXIS-1873
> URL: http://issues.apache.org/jira/browse/AXIS-1873
> Project: Axis
> Type: Bug
> Components: WSDL processing
> Versions: 1.2RC3
> Environment: The WSDL2Java tool in Axis 1.2RC3
> Reporter: Mark Ayzenshtat
>
> Parameter lists in constructors generated using WSDL2Java are now sorted alphabetically by variable name instead of having the order specified by the WSDL. Although this behavior seems to result from a specific change (see diff link below), it strikes me as a bug. I very much expect the variable order to be consistent with the WSDL, and this change not only breaks client code but disrupts intentional, logical ordering of parameters.
> Here's the change:
> http://cvs.apache.org/viewcvs.cgi/ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaBeanWriter.java?r1=1.71&r2=1.72
> Consider the public WSDL: https://adwords.google.com/api/adwords/v2/AccountService?WSDL
> The "Address" type consists of the following elements:
> <element name="name" type="xsd:string"/>
> <element name="companyName" type="xsd:string"/>
> <element name="addressLine1" type="xsd:string"/>
> <element name="addressLine2" nillable="true" type="xsd:string"/>
> <element name="city" type="xsd:string"/>
> <element name="state" nillable="true" type="xsd:string"/>
> <element name="postalCode" type="xsd:string"/>
> <element name="countryCode" type="xsd:string"/>
> <element name="phoneNumber" type="xsd:string"/>
> <element name="faxNumber" nillable="true" type="xsd:string"/>
> It makes sense to have address, city, state, postal code, and country code listed in that order. Unfortunately, WSDL2Java now produces a constructor with the following parameter list:
> java.lang.String addressLine1,
> java.lang.String addressLine2,
> java.lang.String city,
> java.lang.String companyName,
> java.lang.String countryCode,
> java.lang.String faxNumber,
> java.lang.String name,
> java.lang.String phoneNumber,
> java.lang.String postalCode,
> java.lang.String state
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira