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
