You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Yves Langisch (JIRA)" <ax...@ws.apache.org> on 2005/08/04 09:00:41 UTC

[jira] Created: (AXIS-2164) classes generated by wsdl2java don't compile

classes generated by wsdl2java don't compile
--------------------------------------------

         Key: AXIS-2164
         URL: http://issues.apache.org/jira/browse/AXIS-2164
     Project: Apache Axis
        Type: Bug
  Components: WSDL processing  
    Versions: current (nightly)    
    Reporter: Yves Langisch
    Priority: Blocker


Running wsdl2java with the wsdl below generates classes which don't compile. The problem is that CountryCodeType is newly inherited (1.2.1 didn't do that) from CountryCoded which doesn't define a non-argument default constructor but CountryCodeType defines one.

My wsdl:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:tns="http://helloworld.ch/schema/service" xmlns:types="http://helloworld.ch/schema/types" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://helloworld.ch/schema/service" name="SalaryDeclarationService">

    <wsdl:types>
        <xs:schema xmlns:tns="http://helloworld.ch/schema/service" targetNamespace="http://helloworld.ch/schema/service"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:un.ece.unedocs.cl.iso3166="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd">
            <xs:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd" schemaLocation="CountryCode.xsd"/>
            <xs:element name="AbTst" type="un.ece.unedocs.cl.iso3166:CountryCodeType"/>
        </xs:schema>
    </wsdl:types>
    <wsdl:message name="HelloWorldRequest">
        <wsdl:part name="body" element="tns:AbTst"/>
    </wsdl:message>
    <wsdl:message name="HelloWorldResponse">
        <wsdl:part name="body" element="tns:AbTst"/>
    </wsdl:message>
    <wsdl:portType name="MyPort">
        <wsdl:operation name="HelloWorld">
            <wsdl:input message="tns:HelloWorldRequest"/>
            <wsdl:output message="tns:HelloWorldResponse"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="MySOAPBinding" type="tns:MyPort">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="HelloWorld">
            <soap:operation style="document"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="MyService">
        <wsdl:port name="HelloWorld" binding="tns:MySOAPBinding">
            <soap:address location="http://localhost:9000/axis/services/HelloWorld"/>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>


-- 
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


[jira] Commented: (AXIS-2164) classes generated by wsdl2java don't compile

Posted by "David Wong (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS-2164?page=comments#action_12320036 ] 

David Wong commented on AXIS-2164:
----------------------------------

Hi.  I have submitted a new bug report for the problem that I saw: AXIS-2195.  Thanks.

> classes generated by wsdl2java don't compile
> --------------------------------------------
>
>          Key: AXIS-2164
>          URL: http://issues.apache.org/jira/browse/AXIS-2164
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: current (nightly)
>     Reporter: Yves Langisch
>     Priority: Blocker
>  Attachments: AgencyIntegrationServices-V1.0.wsdl
>
> Running wsdl2java with the wsdl below generates classes which don't compile. The problem is that CountryCodeType is newly inherited (1.2.1 didn't do that) from CountryCoded which doesn't define a non-argument default constructor but CountryCodeType defines one.
> My wsdl:
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:tns="http://helloworld.ch/schema/service" xmlns:types="http://helloworld.ch/schema/types" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://helloworld.ch/schema/service" name="SalaryDeclarationService">
>     <wsdl:types>
>         <xs:schema xmlns:tns="http://helloworld.ch/schema/service" targetNamespace="http://helloworld.ch/schema/service"
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>             xmlns:un.ece.unedocs.cl.iso3166="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd">
>             <xs:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd" schemaLocation="CountryCode.xsd"/>
>             <xs:element name="AbTst" type="un.ece.unedocs.cl.iso3166:CountryCodeType"/>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="HelloWorldRequest">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:message name="HelloWorldResponse">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:portType name="MyPort">
>         <wsdl:operation name="HelloWorld">
>             <wsdl:input message="tns:HelloWorldRequest"/>
>             <wsdl:output message="tns:HelloWorldResponse"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="MySOAPBinding" type="tns:MyPort">
>         <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
>         <wsdl:operation name="HelloWorld">
>             <soap:operation style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="MyService">
>         <wsdl:port name="HelloWorld" binding="tns:MySOAPBinding">
>             <soap:address location="http://localhost:9000/axis/services/HelloWorld"/>
>         </wsdl:port>
>     </wsdl:service>
> </wsdl:definitions>

-- 
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


[jira] Resolved: (AXIS-2164) classes generated by wsdl2java don't compile

Posted by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-2164?page=all ]
     
Davanum Srinivas resolved AXIS-2164:
------------------------------------

    Resolution: Fixed

Yves, fixed your problem. David, yours seems to be a different problem unrelated to Yves' problem. Please open one more bug report.

thanks,
dims

> classes generated by wsdl2java don't compile
> --------------------------------------------
>
>          Key: AXIS-2164
>          URL: http://issues.apache.org/jira/browse/AXIS-2164
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: current (nightly)
>     Reporter: Yves Langisch
>     Priority: Blocker
>  Attachments: AgencyIntegrationServices-V1.0.wsdl
>
> Running wsdl2java with the wsdl below generates classes which don't compile. The problem is that CountryCodeType is newly inherited (1.2.1 didn't do that) from CountryCoded which doesn't define a non-argument default constructor but CountryCodeType defines one.
> My wsdl:
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:tns="http://helloworld.ch/schema/service" xmlns:types="http://helloworld.ch/schema/types" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://helloworld.ch/schema/service" name="SalaryDeclarationService">
>     <wsdl:types>
>         <xs:schema xmlns:tns="http://helloworld.ch/schema/service" targetNamespace="http://helloworld.ch/schema/service"
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>             xmlns:un.ece.unedocs.cl.iso3166="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd">
>             <xs:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd" schemaLocation="CountryCode.xsd"/>
>             <xs:element name="AbTst" type="un.ece.unedocs.cl.iso3166:CountryCodeType"/>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="HelloWorldRequest">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:message name="HelloWorldResponse">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:portType name="MyPort">
>         <wsdl:operation name="HelloWorld">
>             <wsdl:input message="tns:HelloWorldRequest"/>
>             <wsdl:output message="tns:HelloWorldResponse"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="MySOAPBinding" type="tns:MyPort">
>         <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
>         <wsdl:operation name="HelloWorld">
>             <soap:operation style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="MyService">
>         <wsdl:port name="HelloWorld" binding="tns:MySOAPBinding">
>             <soap:address location="http://localhost:9000/axis/services/HelloWorld"/>
>         </wsdl:port>
>     </wsdl:service>
> </wsdl:definitions>

-- 
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


[jira] Commented: (AXIS-2164) classes generated by wsdl2java don't compile

Posted by "David Wong (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS-2164?page=comments#action_12318201 ] 

David Wong commented on AXIS-2164:
----------------------------------

I am also having compilation problems with version 1.2 wsdl2java generated code.  Wsdl2java generates a soap binding impl class that has methods which throw a org.xmlsoap.schemas.wsdl.soap.TFault object.  The TFault object generated has the following inheritance heirarchy:

java.io.Serializable
        |
        org.xmlsoap.schemas.wsdl.TExtensibilityElement
                  |
                  org.xmlsoap.schemas.wsdl.soap.TBody
                           |
                           org.xmlsoap.schemas.wsdl.soap.TFaultRes
                                   |
                                   org.xmlsoap.schemas.wsdl.soap.TFault

Since this heirarchy does not include a Throwable, the compiler will error out and tell you that you are trying to throw something that is not throwable.  The WSDL that I am using works with Axis 1.1 and in that version, TFaultRes is inherited from AxisFault which is a RemoteException.  I am attaching the WSDL file I used (AgencyIntegrationServices-V1.0.wsdl) to this issue.

> classes generated by wsdl2java don't compile
> --------------------------------------------
>
>          Key: AXIS-2164
>          URL: http://issues.apache.org/jira/browse/AXIS-2164
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: current (nightly)
>     Reporter: Yves Langisch
>     Priority: Blocker

>
> Running wsdl2java with the wsdl below generates classes which don't compile. The problem is that CountryCodeType is newly inherited (1.2.1 didn't do that) from CountryCoded which doesn't define a non-argument default constructor but CountryCodeType defines one.
> My wsdl:
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:tns="http://helloworld.ch/schema/service" xmlns:types="http://helloworld.ch/schema/types" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://helloworld.ch/schema/service" name="SalaryDeclarationService">
>     <wsdl:types>
>         <xs:schema xmlns:tns="http://helloworld.ch/schema/service" targetNamespace="http://helloworld.ch/schema/service"
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>             xmlns:un.ece.unedocs.cl.iso3166="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd">
>             <xs:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd" schemaLocation="CountryCode.xsd"/>
>             <xs:element name="AbTst" type="un.ece.unedocs.cl.iso3166:CountryCodeType"/>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="HelloWorldRequest">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:message name="HelloWorldResponse">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:portType name="MyPort">
>         <wsdl:operation name="HelloWorld">
>             <wsdl:input message="tns:HelloWorldRequest"/>
>             <wsdl:output message="tns:HelloWorldResponse"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="MySOAPBinding" type="tns:MyPort">
>         <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
>         <wsdl:operation name="HelloWorld">
>             <soap:operation style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="MyService">
>         <wsdl:port name="HelloWorld" binding="tns:MySOAPBinding">
>             <soap:address location="http://localhost:9000/axis/services/HelloWorld"/>
>         </wsdl:port>
>     </wsdl:service>
> </wsdl:definitions>

-- 
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


[jira] Updated: (AXIS-2164) classes generated by wsdl2java don't compile

Posted by "David Wong (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS-2164?page=all ]

David Wong updated AXIS-2164:
-----------------------------

    Attachment: AgencyIntegrationServices-V1.0.wsdl

The WSDL2Java software in Axis 1.2 takes the attached WSDL and generates code with compile errors.  The error is that it generates a soap binding implementation with method declarations which throw objects that are not of type Throwable.

> classes generated by wsdl2java don't compile
> --------------------------------------------
>
>          Key: AXIS-2164
>          URL: http://issues.apache.org/jira/browse/AXIS-2164
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: current (nightly)
>     Reporter: Yves Langisch
>     Priority: Blocker
>  Attachments: AgencyIntegrationServices-V1.0.wsdl
>
> Running wsdl2java with the wsdl below generates classes which don't compile. The problem is that CountryCodeType is newly inherited (1.2.1 didn't do that) from CountryCoded which doesn't define a non-argument default constructor but CountryCodeType defines one.
> My wsdl:
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:tns="http://helloworld.ch/schema/service" xmlns:types="http://helloworld.ch/schema/types" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://helloworld.ch/schema/service" name="SalaryDeclarationService">
>     <wsdl:types>
>         <xs:schema xmlns:tns="http://helloworld.ch/schema/service" targetNamespace="http://helloworld.ch/schema/service"
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>             xmlns:un.ece.unedocs.cl.iso3166="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd">
>             <xs:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CountryCode.xsd" schemaLocation="CountryCode.xsd"/>
>             <xs:element name="AbTst" type="un.ece.unedocs.cl.iso3166:CountryCodeType"/>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="HelloWorldRequest">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:message name="HelloWorldResponse">
>         <wsdl:part name="body" element="tns:AbTst"/>
>     </wsdl:message>
>     <wsdl:portType name="MyPort">
>         <wsdl:operation name="HelloWorld">
>             <wsdl:input message="tns:HelloWorldRequest"/>
>             <wsdl:output message="tns:HelloWorldResponse"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="MySOAPBinding" type="tns:MyPort">
>         <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
>         <wsdl:operation name="HelloWorld">
>             <soap:operation style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="MyService">
>         <wsdl:port name="HelloWorld" binding="tns:MySOAPBinding">
>             <soap:address location="http://localhost:9000/axis/services/HelloWorld"/>
>         </wsdl:port>
>     </wsdl:service>
> </wsdl:definitions>

-- 
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