You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-user@ws.apache.org by Stéphane COLELLA <st...@cvce.lu> on 2004/03/24 10:01:50 UTC
could not find deserializer
Hi,
i would like use the wsif api to buil client to access a coldfusion web services, but i get always this error :
Exception:
org.xml.sax.SAXException: Deserializing parameter 'getInfosReturn': could not find deserializer for type {http://rpc.xml.coldfusion}QueryBean
at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:302)
at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:963)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:198)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:722)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
at org.apache.axis.client.Call.invoke(Call.java:2272)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.invokeAXISRPCStyle(Unknown Source)
at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.invokeRequestResponseOperation(Unknown Source)
at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.executeRequestResponseOperation(Unknown Source)
at Metadata.main(Metadata.java:107)
here is the wsdl file :
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="http://postgres" xmlns:impl="http://postgres" xmlns:intf="http://postgres" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns1="http://rpc.xml.coldfusion" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://postgres">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<complexType name="ArrayOf_xsd_string">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" />
</restriction>
</complexContent>
</complexType>
<complexType name="ArrayOfArrayOf_xsd_anyType">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:anyType[][]" />
</restriction>
</complexContent>
</complexType>
</schema>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://rpc.xml.coldfusion">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<complexType name="QueryBean">
<sequence>
<element name="columnList" nillable="true" type="impl:ArrayOf_xsd_string" />
<element name="data" nillable="true" type="impl:ArrayOfArrayOf_xsd_anyType" />
</sequence>
</complexType>
<complexType name="CFCInvocationException">
<sequence />
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="CFCInvocationException">
<wsdl:part name="fault" type="tns1:CFCInvocationException" />
</wsdl:message>
<wsdl:message name="getInfosRequest">
<wsdl:part name="id" type="xsd:double" />
<wsdl:part name="tt" type="xsd:double" />
<wsdl:part name="lg" type="xsd:double" />
</wsdl:message>
<wsdl:message name="getInfosResponse">
<wsdl:part name="getInfosReturn" type="tns1:QueryBean" />
</wsdl:message>
<wsdl:portType name="flashPaper">
<wsdl:operation name="getInfos" parameterOrder="id tt lg">
<wsdl:input name="getInfosRequest" message="impl:getInfosRequest" />
<wsdl:output name="getInfosResponse" message="impl:getInfosResponse" />
<wsdl:fault name="CFCInvocationException" message="impl:CFCInvocationException" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="flashPaper.cfcSoapBinding" type="impl:flashPaper">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="getInfos">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="getInfosRequest">
<wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
</wsdl:input>
<wsdl:output name="getInfosResponse">
<wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
</wsdl:output>
<wsdl:fault name="CFCInvocationException">
<wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="flashPaperService">
<wsdl:port name="flashPaper.cfc" binding="impl:flashPaper.cfcSoapBinding">
<wsdlsoap:address location="http://192.168.1.32/postgres/flashPaper.cfc" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
please help, i am new in using this api and web services.
thanks
Stefan colella
Re: could not find deserializer
Posted by Aleksander Slominski <as...@cs.indiana.edu>.
hi,
it is always helpful to send all infrormation needed to reproduce the problem :) it seems that here critical to answer is knwoing what is in your Metadata.main()?
so i am guessing but did you declare a mapping for {http://rpc.xml.coldfusion}QueryBean in Metadata?
if you need to do it check out:
http://cvs.apache.org/viewcvs.cgi/ws-wsif/java/samples/complexsoap/client/dynamic/Run.java?rev=1.4&view=auto
and description:
http://cvs.apache.org/viewcvs/~checkout~/ws-wsif/java/samples/complexsoap/client/dynamic/README.htmlhttp://cvs.apache.org/viewcvs/~checkout~/ws-wsif/java/samples/complexsoap/README.html
http://cvs.apache.org/viewcvs/~checkout~/ws-wsif/java/samples/complexsoap/README.html
HTH,
alek
Stéphane COLELLA wrote:
>Hi,
>i would like use the wsif api to buil client to access a coldfusion web services, but i get always this error :
>Exception:
>org.xml.sax.SAXException: Deserializing parameter 'getInfosReturn': could not find deserializer for type {http://rpc.xml.coldfusion}QueryBean
> at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:302)
> at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:963)
> at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:198)
> at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:722)
> at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
> at org.apache.axis.client.Call.invoke(Call.java:2272)
> at org.apache.axis.client.Call.invoke(Call.java:2171)
> at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.invokeAXISRPCStyle(Unknown Source)
> at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.invokeRequestResponseOperation(Unknown Source)
> at org.apache.wsif.providers.soap.apacheaxis.WSIFOperation_ApacheAxis.executeRequestResponseOperation(Unknown Source)
> at Metadata.main(Metadata.java:107)
>
>here is the wsdl file :
><?xml version="1.0" encoding="UTF-8" ?>
>- <wsdl:definitions targetNamespace="http://postgres" xmlns:impl="http://postgres" xmlns:intf="http://postgres" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns1="http://rpc.xml.coldfusion" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
> <wsdl:types>
> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://postgres">
> <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
> <complexType name="ArrayOf_xsd_string">
> <complexContent>
> <restriction base="soapenc:Array">
> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" />
> </restriction>
> </complexContent>
> </complexType>
> <complexType name="ArrayOfArrayOf_xsd_anyType">
> <complexContent>
> <restriction base="soapenc:Array">
> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:anyType[][]" />
> </restriction>
> </complexContent>
> </complexType>
> </schema>
> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://rpc.xml.coldfusion">
> <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
> <complexType name="QueryBean">
> <sequence>
> <element name="columnList" nillable="true" type="impl:ArrayOf_xsd_string" />
> <element name="data" nillable="true" type="impl:ArrayOfArrayOf_xsd_anyType" />
> </sequence>
> </complexType>
> <complexType name="CFCInvocationException">
> <sequence />
> </complexType>
> </schema>
></wsdl:types>
> <wsdl:message name="CFCInvocationException">
> <wsdl:part name="fault" type="tns1:CFCInvocationException" />
></wsdl:message>
><wsdl:message name="getInfosRequest">
> <wsdl:part name="id" type="xsd:double" />
> <wsdl:part name="tt" type="xsd:double" />
> <wsdl:part name="lg" type="xsd:double" />
></wsdl:message>
><wsdl:message name="getInfosResponse">
> <wsdl:part name="getInfosReturn" type="tns1:QueryBean" />
></wsdl:message>
><wsdl:portType name="flashPaper">
> <wsdl:operation name="getInfos" parameterOrder="id tt lg">
> <wsdl:input name="getInfosRequest" message="impl:getInfosRequest" />
> <wsdl:output name="getInfosResponse" message="impl:getInfosResponse" />
> <wsdl:fault name="CFCInvocationException" message="impl:CFCInvocationException" />
> </wsdl:operation>
></wsdl:portType>
><wsdl:binding name="flashPaper.cfcSoapBinding" type="impl:flashPaper">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
> <wsdl:operation name="getInfos">
> <wsdlsoap:operation soapAction="" />
> <wsdl:input name="getInfosRequest">
> <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
></wsdl:input>
><wsdl:output name="getInfosResponse">
> <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
></wsdl:output>
><wsdl:fault name="CFCInvocationException">
> <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://postgres" />
></wsdl:fault>
></wsdl:operation>
></wsdl:binding>
><wsdl:service name="flashPaperService">
> <wsdl:port name="flashPaper.cfc" binding="impl:flashPaper.cfcSoapBinding">
> <wsdlsoap:address location="http://192.168.1.32/postgres/flashPaper.cfc" />
> </wsdl:port>
></wsdl:service>
></wsdl:definitions>
>
>
>please help, i am new in using this api and web services.
>
>thanks
>Stefan colella
>
>
>
--
The best way to predict the future is to invent it - Alan Kay