Hi, I have my soap C++ server and apache java client. In my server i have the method of adding two numbers. From client i send the xml with two numbers. the server recieves the envelope processes it and sends back the response with the sum as return value. Now my problem is when i just send the xml(reading the xml file and writing to io and again reading the response of server from io), the client and server are working fine. But when i use the same xml and parse it and send then i am getting a null pointer exception. Here is the client code that i am using. public class SendMessage { public static void main (String[] args) throws Exception { if (args.length != 2) { System.err.println ("Usage: java " + SendMessage.class.getName () + " SOAP-router-URL envelope-file"); System.exit (1); } // get the envelope to send FileReader fr = new FileReader (args[1]); DocumentBuilder xdb = XMLParserUtils.getXMLDocBuilder(); Document doc = xdb.parse (new InputSource (fr)); if (doc == null) { throw new SOAPException (Constants.FAULT_CODE_CLIENT, "parsing error"); } Envelope msgEnv = Envelope.unmarshall (doc.getDocumentElement ()); Message msg = new Message (); try { msg.send (new URL (args[0]), "", msgEnv); //getting exception here as nullpointer exception. Please let me know why? } catch(Exception e) { System.out.println("into the exception"); } } } Here is the message envelope that the client is sending to the server. And the envelope is sent correctly. POST /soap/Calculation HTTP/1.0 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: 666 SOAPAction: "" <?xml version='1.0' encoding='UTF-8'?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <add SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <a xsi:type="xsd:int" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">5</a> <b xsi:type="xsd:int" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">6</b> </add> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Here is the message envelope sent by the server after recieving the client message. <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <addResponse SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > <returnValue xsi:type="xsd:int">11</returnValue> </addResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> I am not knowing why i am getting null pointer exception when when i say msg.send. Please help me. Is there any problem with the Apache's way of parsing the envelope? But it is sending the envelope correctly, then why am i getting the null pointer exception? Thanks, Jyothi