Hi Amila,

Thanks for your quick reply.

Please could let me know the reference of the bug related to this problem ?

Thanks in advance.

Stephane Roy
Alcatel-Lucent

Amila Suriarachchi wrote:
Any way this is a bug and I fixed it for the trunk.

On 5/10/07, *Amila Suriarachchi* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    have you put elementFormDefault="qualified" in your schma?


    On 5/10/07, *Stephane Roy* < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>> wrote:

        Hi,

        The XSD schema used by my WSDL defines the following types:

        ...
           <xsd:complexType name="typeA">
             <xsd:sequence>

               <xsd:element name="typeB">
                 <xsd:simpleType>
                   <xsd:restriction base="xsd:positiveInteger">
                     <xsd:minExclusive value="01"/>
                     <xsd:maxInclusive value="99"/>
                   </xsd:restriction>
                 </xsd:simpleType>
               </xsd:element>

             </xsd:sequence>
           </xsd:complexType>
        ...

        In short, typeA uses typeB, typeB being defined within typeA.


        I generated the code for the server in adb mode with the command

        $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o
        /tmp/my/dir/server -d adb -s -wv 1.1 -ss -sd

        Then in /tmp/my/dir/server/src, I have a java file for typeB,
        for which
        the package name is not set ('package ;'). As a result, the java
        code
        cannot be compiled.

        I have this problem with Axis2.1.1.1 and with the latest release
        (Axis2.1.2).


        However, if I change my XSD schema, to have something like this:

        ...
           <xsd:simpleType name="typeB">
             <xsd:restriction base="xsd:positiveInteger">
               <xsd:minExclusive value="01"/>
               <xsd:maxInclusive value="99"/>
             </xsd:restriction>
           </xsd:simpleType>

           <xsd:complexType name="typeA">
             <xsd:sequence>
               <xsd:element name="elementB" type="typeB">
               </xsd:element>
             </xsd:sequence>
           </xsd:complexType>
        ...

        In short, typeB is now defined at the top-level in the XSD
        schema and
        typeA defines elementB which uses a reference to typeB.

        Now, the code generation in adb mode works fine and the java
        files compile.


        I would like to know if someone had this kind of problem before.
        Is this behavior a known issue or a limitation of Axis2.1.x ?

        Thanks in advance.

        Stephane Roy
        Alcatel-Lucent

-- Amila Suriarachchi, WSO2 Inc.
--
Amila Suriarachchi,
WSO2 Inc.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to