Axis
  1. Axis
  2. AXIS-2545

wsdl2java mix up order of elements and arrays in super constructor call

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 1.4
    • Fix Version/s: None
    • Component/s: Basic Architecture
    • Labels:
      None
    • Environment:
      Windows 2000 professional.

      java version "1.4.2_05"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
      Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)

      Description

      I tried to create dataobjects using the following WSDL

      <?xml version="1.0" encoding="UTF-8"?>
      <wsdl:definitions
      targetNamespace="http://axis-test.t-mobile.de/test/order"
      xmlns:order="http://axis-test.t-mobile.de/test/order"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
      <wsdl:types>
      <schema xmlns="http://www.w3.org/2001/XMLSchema">
      <complexType name="SubBean">
      <complexContent>
      <extension base="order:SuperBean">
      <sequence/>
      </extension>
      </complexContent>
      </complexType>
      <complexType name="SuperBean">
      <sequence>
      <element name="superContent" maxOccurs="1" minOccurs="1" type="xsd:string"/>
      </sequence>
      <attribute name="superAttribute" type="xsd:int"/>
      </complexType>
      </schema>
      </wsdl:types>
      </wsdl:definitions>

      As a result I got a compiler error.
      [javac] Compiling 2 source files to Y:\wfa_source\pcm\src\WebserviceGateway\build_ProdVersion
      [javac] Y:\wfa_source\pcm\src\WebserviceGateway\generated_ProdVersion\de\t_mobile\axis_test\test\order\SubBean.java:17: cannot resolve symbol
      [javac] symbol : constructor SuperBean (int,java.lang.String)
      [javac] location: class de.t_mobile.axis_test.test.order.SuperBean
      [javac] super(
      [javac] ^
      [javac] 1 error

      The reason of this is a mix up in the order of the arguments in super class.
      The constructor of SuperBean has the signature
      public SuperBean( java.lang.String superContent, int superAttribute)
      but in the constructor of SubBean you find the call
      super( superAttribute, superContent);

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Siegfried Sauter-Fischer
          • Votes:
            7 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

            • Created:
              Updated:

              Development