The querybean should normally be coorect, but i have not programmed th web service an i don't have the source. i know only that colfusion was. thanks i will try it as soon as possible.
-----Message d'origine----- De : Aleksander Slominski [mailto:[EMAIL PROTECTED] Envoy� : mercredi 24 mars 2004 16:47 � : [EMAIL PROTECTED] Objet : Re: could not find deserializer St�phane COLELLA wrote: >Thanks for your reply here is my code : >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. > > hi, 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
