You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by mark pope <th...@yahoo.com> on 2003/06/21 01:21:36 UTC

WSDL2Java bug? or my misunderstanding

Attached is a very simple example of a WSDL file that fails(produces undesired
behavior in my opinion) when parsed with WSDL2Java and Sun's JWSDP_1.1
wscompile.

Basically I want to define a fault message that contains a part that is of
complextype like this:

    <wsdl:message name="OutageRequestWebServiceException">
        <wsdl:part name="exception_content" type="xsd1:ExceptionContent"/>
    </wsdl:message>

If I define the part type as "xsd:int" the
OutageRequestWebServiceException.java file is generated.

When the part type is "xsd1:ExceptionContent" the java file is not generated
and  other generated files do not have the Exception in their throws clause.

What's up?




<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
   
targetNamespace="http://www.caiso.com/webservices/slic/OutageRequestWebService"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:tns="http://www.caiso.com/webservices/slic/OutageRequestWebService"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsd1="http://www.caiso.com/webservices/slic/.xsd1">
    <wsdl:types>
        <xsd:schema
            targetNamespace="http://www.caiso.com/webservices/slic/.xsd1"
            xmlns="http://schemas.xmlsoap.org/wsdl/"
            xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
           
xmlns:tns="http://www.caiso.com/webservices/slic/OutageRequestWebService"
            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
            xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:xsd1="http://www.caiso.com/webservices/slic/.xsd1">
            <xsd:complexType name="ExceptionContent">
                <xsd:sequence>
                    <xsd:element maxOccurs="1" minOccurs="0" name="code"
type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="OutageRequestWebServiceException">
       <!--<wsdl:part name="exception_content"
type="xsd1:ExceptionContent"/>-->
        <wsdl:part name="exception_content" type="xsd:int"/>
    </wsdl:message>
    <wsdl:message name="findByCriteriaRequest">
        <wsdl:part name="types" type="xsd:int"/>
        <wsdl:part name="state_codes" type="xsd:int"/>
        <wsdl:part name="start_date" type="xsd:dateTime"/>
        <wsdl:part name="end_date" type="xsd:dateTime"/>
    </wsdl:message>
    <wsdl:message name="findByCriteriaResponse">
        <wsdl:part name="return" type="xsd:int"/>
    </wsdl:message>
    <wsdl:portType name="OutageRequestWebService">
        <wsdl:operation
            name="findByCriteria"
            parameterOrder="types state_codes start_date end_date">
            <wsdl:input message="tns:findByCriteriaRequest"/>
            <wsdl:output message="tns:findByCriteriaResponse"/>
            <wsdl:fault
                message="tns:OutageRequestWebServiceException"
                name="OutageRequestWebServiceException"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding
        name="OutageRequestWebServiceSoapBinding"
        type="tns:OutageRequestWebService">
        <wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="findByCriteria">
            <wsdlsoap:operation/>
            <wsdl:input>
                <wsdlsoap:body
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                   
namespace="http://www.caiso.com/webservices/slic/OutageRequestWebService/"
                    use="encoded"/>
            </wsdl:input>
            <wsdl:output>
                <wsdlsoap:body
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                   
namespace="http://www.caiso.com/webservices/slic/OutageRequestWebService/"
                    use="encoded"/>
            </wsdl:output>
            <wsdl:fault name="OutageRequestWebServiceException">
                <wsdlsoap:fault
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                    name="tns:OutageRequestWebServiceException"
                   
namespace="http://www.caiso.com/webservices/slic/OutageRequestWebService"
                    use="encoded"/>
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="OutageRequestWebServiceService">
        <wsdl:port
            binding="tns:OutageRequestWebServiceSoapBinding"
            name="OutageRequestWebService">
            <wsdlsoap:address location="http://localhost/soaprpcrouter"/>
        </wsdl:port>
    </wsdl:service>
    <xsd:annotation>
        <xsd:documentation>XXX</xsd:documentation>
    </xsd:annotation>
</wsdl:definitions>


=====
Regards,
Mark Pope

__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com