Thanks for your reply here is my code :hi,
i have used the example to write(to copy the code :-)) the code but i don't know if that what i have wrote is correct or not. I get no problem if we use String instead of the a recordSet, but it where better to use recordset.
QueryBean is of course correct Java Bean (i will assume thi :)) ?
looking on the exception ("{http://rpc.xml.coldfusion}QueryBean") i would say that you should not map the bean to "http://postgres" but to "http://rpc.xml.coldfusion", did you try to do:
service.mapType(
new QName("http://rpc.xml.coldfusion", "QueryBean"),
Class.forName(
"coldfusion.xml.rpc.QueryBean")
);HTH,
alek
here is my code :
WSIFServiceFactory factory = WSIFServiceFactory.newInstance(); WSIFService service; try { service = factory.getService( "http://192.168.1.32/postgres/flashPaper.cfc?wsdl", null, null, "http://postgres", "flashPaper" ); service.mapType( new QName("http://postgres", "QueryBean"), Class.forName( "coldfusion.xml.rpc.QueryBean") ); WSIFMessage input = operation.createInputMessage(); WSIFMessage output = operation.createOutputMessage(); WSIFMessage fault = operation.createFaultMessage(); input.setDoublePart("id",7); input.setDoublePart("tt",0); input.setDoublePart("lg",1); operation.executeRequestResponseOperation(input, output, fault) }catch...
-----Message d'origine----- De : Aleksander Slominski [mailto:[EMAIL PROTECTED] Envoy� : mercredi 24 mars 2004 16:01 � : [EMAIL PROTECTED] Objet : Re: could not find deserializer
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
