WSDL parsing error with apachesoap:DataHandler
----------------------------------------------
Key: CXF-1885
URL: https://issues.apache.org/jira/browse/CXF-1885
Project: CXF
Issue Type: Bug
Environment: CXF 2.1.3, win32
Reporter: Himanshu Arora
Hi,
I'm trying to access a service whose WSDL was created through AXIS.
And now due to our requirements I'm creating the client through CXF. So I
updated my WSDL to use "doc/lite" encoding and some other changes.
I did similar changes in other WSDLs which have primitive types and they are
working fine. But in the following WSDL, I'm getting following error:-
---------------------------------------------------------------------------------------
WSDLToJava Error:
Summary: Failures: 2, Warnings: 0
<<< ERROR!
Part <file> in Message
<{http://schema.vasoftware.com/sf/soap43/service}uploadFileRequest> reference
d Type <{http://xml.apache.org/xml-soap}DataHandler> can not be found in the
schemas
Part <downloadFileReturn> in Message
<{http://schema.vasoftware.com/sf/soap43/service}downloadFileRe
sponse> referenced Type <{http://xml.apache.org/xml-soap}DataHandler> can not
be found in the schema
s
---------------------------------------------------------------------------------------
Following is my WSDL:-
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
targetNamespace="http://schema.vasoftware.com/sf/soap43/service"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://schema.vasoftware.com/sf/soap43/service"
xmlns:intf="http://schema.vasoftware.com/sf/soap43/service"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns1="http://schema.vasoftware.com/sf/soap43/type"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<schema targetNamespace="http://schema.vasoftware.com/sf/soap43/type"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"
schemaLocation="http://schemas.xmlsoap.org/soap/encoding/" />
<xsd:element name="PermissionDeniedFault"
type="tns1:PermissionDeniedFault"></xsd:element>
<xsd:element name="InvalidSessionFault"
type="tns1:InvalidSessionFault"></xsd:element>
<xsd:element name="SystemFault"
type="tns1:SystemFault"></xsd:element>
<complexType name="WebServiceFault">
<sequence />
</complexType>
<complexType name="PermissionDeniedFault">
<complexContent>
<extension base="tns1:WebServiceFault">
<sequence />
</extension>
</complexContent>
</complexType>
<complexType name="SystemFault">
<complexContent>
<extension base="tns1:WebServiceFault">
<sequence />
</extension>
</complexContent>
</complexType>
<complexType name="InvalidSessionFault">
<complexContent>
<extension base="tns1:WebServiceFault">
<sequence />
</extension>
</complexContent>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="PermissionDeniedFault">
<wsdl:part name="fault" element="tns1:PermissionDeniedFault" />
</wsdl:message>
<wsdl:message name="SystemFault">
<wsdl:part name="fault" element="tns1:SystemFault" />
</wsdl:message>
<wsdl:message name="downloadFileResponse">
<wsdl:part name="downloadFileReturn" element="apachesoap:DataHandler" />
</wsdl:message>
<wsdl:message name="downloadFileRequest">
<wsdl:part name="sessionId" type="xsd:string" />
<wsdl:part name="fileId" type="xsd:string" />
</wsdl:message>
<wsdl:message name="InvalidSessionFault">
<wsdl:part name="fault" element="tns1:InvalidSessionFault" />
</wsdl:message>
<wsdl:message name="uploadFileRequest">
<wsdl:part name="sessionId" type="xsd:string" />
<wsdl:part name="file" element="apachesoap:DataHandler" />
</wsdl:message>
<wsdl:message name="uploadFileResponse">
<wsdl:part name="uploadFileReturn" type="xsd:string" />
</wsdl:message>
<wsdl:portType name="FileStorageAppSoap">
<wsdl:operation name="downloadFile" parameterOrder="sessionId fileId">
<wsdl:input message="impl:downloadFileRequest"
name="downloadFileRequest" />
<wsdl:output message="impl:downloadFileResponse"
name="downloadFileResponse" />
<wsdl:fault message="impl:InvalidSessionFault"
name="InvalidSessionFault" />
<wsdl:fault message="impl:PermissionDeniedFault"
name="PermissionDeniedFault" />
<wsdl:fault message="impl:SystemFault" name="SystemFault" />
</wsdl:operation>
<wsdl:operation name="uploadFile" parameterOrder="sessionId file">
<wsdl:input message="impl:uploadFileRequest"
name="uploadFileRequest" />
<wsdl:output message="impl:uploadFileResponse"
name="uploadFileResponse" />
<wsdl:fault message="impl:InvalidSessionFault"
name="InvalidSessionFault" />
<wsdl:fault message="impl:SystemFault" name="SystemFault" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="FileStorageAppSoapBinding"
type="impl:FileStorageAppSoap">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="downloadFile">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="downloadFileRequest">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:input>
<wsdl:output name="downloadFileResponse">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:output>
<wsdl:fault name="InvalidSessionFault">
<wsdlsoap:fault
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:fault>
<wsdl:fault name="PermissionDeniedFault">
<wsdlsoap:fault
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:fault>
<wsdl:fault name="SystemFault">
<wsdlsoap:fault
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="uploadFile">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="uploadFileRequest">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:input>
<wsdl:output name="uploadFileResponse">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:output>
<wsdl:fault name="InvalidSessionFault">
<wsdlsoap:fault
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:fault>
<wsdl:fault name="SystemFault">
<wsdlsoap:fault
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://schema.vasoftware.com/sf/soap43/service"
use="literal" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="FileStorageAppSoapService">
<wsdl:port binding="impl:FileStorageAppSoapBinding"
name="FileStorageApp">
<wsdlsoap:address
location="http://localhost:8080/sf-soap43/services/FileStorageApp" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Does CXF not support DataHandler?
If yes, then is there something wrong in my WSDL?
Thanks,
Himanshu
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.