Listing 7

public void sendSOAPMessage(String hostURL, String filename)
{
    try {
        // Read and parse the XML to send 
        FileReader fr = new FileReader(filename);
        DocumentBuilder xdb = XMLParserUtils.getXMLDocBuilder();
        Document doc = xdb.parse(new InputSource(fr));
            
        // create the SOAP Envelope and Body
        Envelope env = new Envelope();
        Vector bodyElems = new Vector();
        bodyElems.add( doc.getDocumentElement() );
        Body body = new Body();
        body.setBodyEntries( bodyElems );
        env.setBody( body );
            
        // create SOAP message and send it
        org.apache.soap.messaging.Message msg = 
            new org.apache.soap.messaging.Message();
        msg.send(new java.net.URL(hostURL), URI, env);

        // get SOAP response
        SOAPTransport st = msg.getSOAPTransport();
        BufferedReader br = st.receive();
            
        System.out.println("\r\nSOAP Server response:");
        String line = br.readLine();
        while ( line != null ) {
            System.out.println(line);
            line = br.readLine();
        }
    }
    catch ( Exception e ) {
        e.printStackTrace();
    }
}