Hi, I'm new on the Soap user mailing list. There is some time that I have some problems to use my own mapped object with SOAP.
I developped some objects that implements the import org.apache.soap.util.xml.(de)serializer class. I put them in my deployement descriptor like below: <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment" id="urn:OntologyServer"> <isd:provider type="java" scope="Application" methods="getConcept"> <isd:java class="eCos.server.SOAPServer.eCosOntologyServerBean" static="false"/> </isd:provider> <isd:mappings> <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:x="urn:eCognos" qname="x:eCosConceptImpl" javaType="eCos.eCosConceptManager.eCosConceptImpl" java2XMLClassName="eCos.server.SOAPServer.eCosConceptSerializer" xml2JavaClassName="eCos.server.SOAPServer.eCosConceptSerializer"/> </isd:mappings> <isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener> </isd:service> After that, i developped the client side that registers those objects in the SOAPMappingRegistry and invoke the service: // Get command line args URL url = new URL("http://10.3.5.11:8080/soap/servlet/rpcrouter" ); // Address of SOAP router // Build the call Call call=new Call(); call.setSOAPMappingRegistry(new SOAPMappingRegistry()); call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC); call.setTargetObjectURI("urn:OntologyServer"); call.setMethodName("getConcept"); eCosConceptSerializer s = new eCosConceptSerializer(); call.getSOAPMappingRegistry().mapTypes( Constants.NS_URI_SOAP_ENC, new QName("urn:eCognos","eCosConceptImpl"), eCosConceptImpl.class, s, s); Vector params=new Vector(); params.addElement(new Parameter("conceptId",String.class, args[0],null)); call.setParams(params); // Invoke the call to the SOAP server resp = call.invoke(url, ""); System.out.println("invocation of the method of the service !"); // Print the returned string boolean status=resp.generatedFault(); Parameter ret=resp.getReturnValue(); Object value=ret.getValue(); System.out.println("Response : "+ value); System.out.println("End of the call !"); The problem is that the (un)marshall is never called by the application.So the ret object (in the client) receive null. If the service returns a String, the ret object receive it. Is anybody could help me ? I really don't understand why the serializer is never called. Thanks by advance. Guillaume -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>