You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2009/07/28 21:14:14 UTC

[jira] Resolved: (CXF-1885) WSDL parsing error with apachesoap:DataHandler

     [ https://issues.apache.org/jira/browse/CXF-1885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Kulp resolved CXF-1885.
------------------------------

       Resolution: Won't Fix
    Fix Version/s: Invalid


CXF doesn't support SOAP encoding (only literal encoding) and the DataHandler thing in this wsdl is an ancient xmlsoap specific proprietary extension.    Normally, you would use xsd:base64Binary with an mtom contentType thing which would map into a datahandler.

> 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
>             Fix For: Invalid
>
>
> 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.