Scott, Here are the details.
I guess i need to provide the mapping in my DeploymentDescriptor.xml. Here is my descriptor. <dd:service xmlns:dd="http://xml.apache.org/xml-soap/deployment" id="urn:ldap"> <dd:provider type="java" scope="Application" methods="getLDAP"> <dd:java class="LDAPCall" static="false" /> </dd:provider> <dd:faultListener>org.apache.soap.server.DOMFaultListener</dd:faultListener> <dd:mappings> <dd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:x="urn:ldap" qname="x:ldap" javaType="java.util.Hashtable" java2XMLClassName="org.apache.soap.encoding.soapenc.HashtableSerializer" xml2JavaClassName="org.apache.soap.encoding.soapenc.HashtableSerializer"/> </dd:mappings> </dd:service> I am returning Hashtable from my method call. I am getting following exception. The SOAP Server says: http://localhost:8080/soap/servlet/rpcrouter Ouch, the call failed: Fault Code = SOAP-ENV:Server Fault String = java.lang.IllegalArgumentException: No Serializer found to seri alize a 'java.util.Vector$1' using encoding style 'http://schemas.xmlsoap.org/so ap/encoding/'. I have provide mapping for hashtable why it is throwing me error for vector class?. are my mappings correct? Vijay Scott Nichol wrote: > A couple of things: > > 1. Which line of your code is line 36 where the exception is occurring? > > 2. Your code should check for a SOAP Fault before doing > getReturnValue(), e.g. > > Response resp = call.invoke(url, ""); > if (resp.generatedFault()) { > Fault fault = resp.getFault(); > System.err.println("Generated fault: " + fault); > } else { > Parameter p = resp.getReturnValue(); > Hashtable values = (Hashtable)p.getValue(); > ... > > If there is a fault, I believe that getReturnValue() will return null, > so calling it without checking for a fault could lead to an NPE. > > 3. Although I take it you are using Apache SOAP on the server in this > case, it is worth pointing out that some SOAP implementations will omit > the return value from the SOAP envelope if its value is null (e.g. this > happens in .NET when the return is not specified as being nillable). > Therefore, it is good practice in your client code to check that > getReturnValue() does not itself return null. > > Scott Nichol > > ----- Original Message ----- > From: "Vijay Shinde" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Thursday, January 02, 2003 11:54 AM > Subject: SOAP - method return > > > Hi, > > > > I am doing LDAP call using soap .I want to return Hashtable from my > > method call. > > On my client site I am using following code to get my hashtable. > > > > Response resp = call.invoke(url, ""); > > Parameter p = resp.getReturnValue(); > > Hashtable values = (Hashtable)p.getValue(); > > > > I am getting following exception. > > > > The SOAP Server says: > > http://localhost:8080/soap/servlet/rpcrouterException in t > > hread "main" java.lang.NullPointerException > > at LDAP_client.main(LDAP_client.java:36) > > > > any help will be useful. > > > > Vijay > > -- > > This communication is intended for the addressee(s) and may contain > > confidential and legally privileged information. We do not waive > > confidentiality or privilege by mistransmission. If you have received > > this communication in error, any use, dissemination, printing or > copying > > is strictly prohibited; please destroy all electronic and paper copies > > and notify the sender immediately. > > > > > > > > -- > > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> > > > > > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> -- This communication is intended for the addressee(s) and may contain confidential and legally privileged information. We do not waive confidentiality or privilege by mistransmission. If you have received this communication in error, any use, dissemination, printing or copying is strictly prohibited; please destroy all electronic and paper copies and notify the sender immediately. -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>