Issue Details (XML | Word | Printable)

Key: AXIS-2391
Type: Bug Bug
Status: Open Open
Priority: Blocker Blocker
Assignee: Unassigned
Reporter: Vaduz
Votes: 4
Watchers: 5
Operations

If you were logged in you would be able to see more operations.
Axis

WSDL2Java ignores attributes for complex types that have only element with maxOccurs=unbounded in sequence

Created: 02/Feb/06 02:23 AM   Updated: 04/May/07 12:36 PM
Return to search
Component/s: WSDL processing
Affects Version/s: 1.3
Fix Version/s: None

Time Tracking:
Not Specified

File Attachments:
  Size
Zip Archive Licensed for inclusion in ASF works axis-2391.zip 2006-09-27 04:30 PM Nathan Lipke 4 kB
Environment:
Axis for Java v1.3

java version "1.5.0_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_01-b08)
Java HotSpot(TM) Client VM (build 1.5.0_01-b08, mixed mode, sharing)

Windows XP Professional, SP2


 Description  « Hide
WSDL2Java generates wrong source code for the complex type of the following structure:

<xs:complexType name="SomeListType">
<xs:sequence>
<xs:element name="Item" type="tns:ItemType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="attr1" type="xs:string" />
<xs:attribute name="attr2" type="xs:string" />
</xs:complexType>

The complex type should be a sequence with only element, which has maxOccurs="unbounded".
In this case all atributes are ignored and not included to the resulting type.

Version 1.2 works correctly. Version 1.3 works correctly, if the sequense has includes more than one element.

The sample WSDL used for test:

--------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>

<definitions name ="DayOfWeek"
  targetNamespace="http://www/bug/DayOfWeek.wsdl"
  xmlns:tns="http://www/bug/DayOfWeek.wsdl"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns="http://schemas.xmlsoap.org/wsdl/">

<types>
<xsd:schema>
<xsd:complexType name="ReplyType">
<xsd:sequence>
<xsd:element name="Item" type="xsd:string" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="attr1" type="xsd:string" />
<xsd:attribute name="attr2" type="xsd:string" />
</xsd:complexType>
</xsd:schema>
</types>

  <message name="DayOfWeekInput">
    <part name="date" type="xsd:date"/>
  </message>
  <message name="DayOfWeekResponse">
    <part name="dayOfWeek" type="tns:ReplyType"/>
  </message>

  <portType name="DayOfWeekPortType">
    <operation name="GetDayOfWeek">
      <input message="tns:DayOfWeekInput"/>
      <output message="tns:DayOfWeekResponse"/>
    </operation>
  </portType>

  <binding name="DayOfWeekBinding" type="tns:DayOfWeekPortType">
    <soap:binding style="document"
      transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="GetDayOfWeek">
      <soap:operation soapAction="getdayofweek"/>
      <input>
        <soap:body use="encoded"
          namespace="http://www/bug"
          encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
        <soap:body use="encoded"
          namespace="http://www/bug"
            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
  </binding>

  <service name="DayOfWeekService" >
    <documentation>
      Returns the day-of-week name for a given date
    </documentation>
    <port name="DayOfWeekPort" binding="tns:DayOfWeekBinding">
      <soap:address location="http://www/dayofweek/DayOfWeek"/>
    </port>
  </service>

</definitions>

--------------------------------------------------


For this WSDL Axis 1.2 generates the correct code:
...
public www.bug.DayOfWeek_wsdl.ReplyType getDayOfWeek(java.util.Date date) ...
...

Where reply type includes attributes attr1 and attr2 as well as Item array.

Axis 1.3 does not generate ReplyType class at all, and declares getDayOfWeek as following:

public java.lang.String[] getDayOfWeek(java.util.Date date)...

which is obviosly wrong.



 


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Tom Jordahl made changes - 18/Feb/06 03:33 AM
Field Original Value New Value
Priority Major [ 3 ] Blocker [ 1 ]
Nathan Lipke made changes - 27/Sep/06 04:30 PM
Attachment axis-2391.zip [ 12341812 ]