Hi,
I have been using axis client call for simpleType wsdl object.
For complexType wsdl, i get the following error:
org.xml.sax.SAXException: No deserializer
please find the below snippet and advice how to proceed:
wsdl:
<complexType name="ArrayGetSearchRequest">
<sequence>
<element name="username" type="xsd:string"/>
<element name="password" type="xsd:string"/>
<element name="input" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="ArrayGetSearchResponse">
<sequence>
<element maxOccurs="unbounded" name="getSearchReturn"
type="tns:addressresult"/>
</sequence>
</complexType>
<complexType name="addressresult">
<sequence>
<element name="Access" type="xsd:string"/>
<element name="SearchStatus" type="xsd:string"/>
<element name="Road" type="xsd:string"/>
<element name="Postal" type="xsd:string"/>
<element name="ID" type="xsd:string"/>
<element name="blkno" type="xsd:string"/>
</sequence>
</complexType>
</schema>
</types>
<message name="getSearchRequest">
<part name="Result" type="tns:ArrayGetSearchRequest"/>
</message>
<message name="getSearchResponse">
<part name="Result" type="tns:ArrayGetSearchResponse"/>
</message>
<portType name="MapServicePort">
<operation name="mapSearch">
<input message="tns:getSearchRequest"/>
<output message="tns:getSearchResponse"/>
</operation>
</portType>
<binding name="MapServiceBinding" type="tns:MapServicePort">
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="mapSearch">
<soap:operation soapAction=""/>
<input>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="MapService">
<port name="MapServicePort" binding="tns:MapServiceBinding">
</port>
</service>
</definitions>
client code:
Service service = new Service();
Call call =(Call)service.createCall();
QName bean_qn = new QName("http://tempuri.org/",
"Addressresult");
Class bean_cls = Addressresult.class;
call.registerTypeMapping(bean_cls, bean_qn,new
org.apache.axis.encoding.ser.ArraySerializerFactory(),new
org.apache.axis.encoding.ser.ArrayDeserializerFactory());
call.setTargetEndpointAddress(new
java.net.URL(endpoint));
call.setOperationName(new QName("mapSearch"));
call.addParameter("Result",
org.apache.axis.Constants.SOAP_ARRAY,
javax.xml.rpc.ParameterMode.IN);
call.setReturnClass(Vector.class);
call.invoke( new Object[] {content} );
Please help me. I am very new to axis.
Regards,
Priya
--
View this message in context:
http://www.nabble.com/Axis-Client-call-using-complexType-wsdl-tp20225398p20225398.html
Sent from the Axis - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]