Hi,

 

we run in to some problems developing an Axis2 v1.5 Web service client
with SUN JDK 6 (different platforms) and IBM JDK 6 (PowerPC Linux) in
parallel.

The WSDL of the Web service contains following nested type definitions
with identical names:

 

...

<xsd:complexType name="string2stringMap">

      <xsd:sequence>

            <xsd:element maxOccurs="unbounded" minOccurs="0"
name="entry">

                  <xsd:complexType>

                        <xsd:sequence>

                             <xsd:element maxOccurs="1" minOccurs="0"
name="key" type="xsd:string"/>

                             <xsd:element maxOccurs="1" minOccurs="0"
name="value" type="xsd:string"/>

                        </xsd:sequence>

                  </xsd:complexType>

            </xsd:element>

      </xsd:sequence>

</xsd:complexType>

 

<xsd:complexType name="anyType2anyTypeMap">

      <xsd:sequence>

            <xsd:element maxOccurs="unbounded" minOccurs="0"
name="entry">

                  <xsd:complexType>

                        <xsd:sequence>

                             <xsd:element maxOccurs="1" minOccurs="0"
name="key" type="xsd:anyType"/>

                             <xsd:element maxOccurs="1" minOccurs="0"
name="value" type="xsd:anyType"/>

                        </xsd:sequence>

                  </xsd:complexType>

            </xsd:element>

      </xsd:sequence>

</xsd:complexType>

...

 

As result the WSDL2Java tool generates inner or separate classes
(depends on -u command line option) for the "entry" type definitions
with the following names:

 

Entry_type0.java

Entry_type1.java

 

The problem is the order the Entry_type*.java classes are created, i.e.
Entry_type0.java belongs to the string2stringMap class in the SUN JDK,
but to the anyType2anyTypeMap class in the IBM JDK. As result source
code that accesses these classes is affected and has to be adapted for
the JDKs of both vendors.

 

Is there any fix or workaround for this issue?

 

Regards,

Norman Kubicek

 

 

 

 

 

Reply via email to