[ 
http://issues.apache.org/jira/browse/AXIS-2020?page=comments#action_66490 ]
     
Tom Jordahl commented on AXIS-2020:
-----------------------------------

This patch also causes the test/wsdl/datatypes test case to fail because of the 
ArrayOfInt complexType in the WSDL:
      <s:complexType name="ArrayOfInt">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="int" 
type="s:int" />
        </s:sequence>
      </s:complexType>
      <s:element name="ArrayOfInt" nillable="true" type="s0:ArrayOfInt" />

The creates an ArrayOfInt bean with a member _int which has always been an 
int[], but with the patch changes to an Integer[].  I think it is seeing the 
nillable on the element (which maps to the Bean type) and getting it wrong, as 
the complexType does NOT have the nillable attribute, so the member of the Bean 
should be int[].

Andrei, do you want to take a crack at fixing the patch? Thanks.


> wsdl2java does not generate array of wrappers for array of nillable primitives
> ------------------------------------------------------------------------------
>
>          Key: AXIS-2020
>          URL: http://issues.apache.org/jira/browse/AXIS-2020
>      Project: Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: 1.2
>     Reporter: Hans
>  Attachments: 2020.txt
>
> For the following xsd construct:
> <xsd:complexType name="StructureType">
>     <xsd:all>
>         <xsd:element name="fld1" type="xsd:int" 
>             nillable="true" minOccurs="0" maxOccurs="unbounded"/>
>         <xsd:element name="fld2" type="s0:intarr" minOccurs="0"/>
>     </xsd:all>
> </xsd:complexType>
> <xsd:complexType name="intarr">
>     <xsd:complexContent>
>         <xsd:restriction base="soapenc:Array">
>             <xsd:sequence>
>                 <xsd:element name="element" type="s:int" 
>                     nillable="true" minOccurs="0" maxOccurs="unbounded"/>
>             </xsd:sequence>
>         </xsd:restriction>
>     </xsd:complexContent>
> </xsd:complexType>
> wsdl2java from Axis 1.1 generates a Java Class like:
> class StructureType implements Serializable {
>     private Integer[] fld1;
>     private Integer[] fld2;
> ...
> But in Axis 1.2 the following is generated:
> class StructureType implements Serializable {
>     private int[] fld1;
>     private int[] fld2;
> ...
> This is incorrect - wrapper types should have been used for fld1 and fld2.
> Also reproducable on the nightly 1.2.1 build of 27 may 2005.

-- 
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
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to