import java.io.*;
 import java.util.*;
 import java.net.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import org.apache.soap.util.xml.*;
 import org.apache.soap.*;
 import org.apache.soap.rpc.*;
 /*
 */
 public class SendFax extends HttpServlet
 {
     /**
      * Handle the GET and HEAD methods by building a simple web page.
      * HEAD is just like GET, except that the server returns only the
      * headers (including content length) not the body we write.
      */
     public void doGet (HttpServletRequest request,
                        HttpServletResponse response)
         throws ServletException, IOException
     {
         PrintWriter out;

         // set content type and other response header fields first
         response.setContentType("text/html");
         out = response.getWriter();
         out.println("Preparing to send:\n");
         sendfax(out);
         out.println("\nSent\n");
         out.close();
     }


     public void sendfax(PrintWriter out)
     {
         // build the call
         Call call = new Call();
         call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
         call.setTargetObjectURI("urn:OneOutBox");
         call.setMethodName("SendFreeFAX");

         Vector params = new Vector();
         params.addElement(new Parameter("Sender", String.class, "support@OneOutBox.com",null));
         params.addElement(new Parameter("ToNum", String.class, "14259442242",null));
         params.addElement(new Parameter("Name", String.class, "Java Test",null));
         params.addElement(new Parameter("Text", String.class, "SendFax Test",null));
         call.setParams(params);

         // invoke the service

         try {
           Response resp = call.invoke(new URL("http://www.OneOutBox.com/cgi-bin/soap/outbox.cgi"),"");

           // print the response
           if (!resp.generatedFault())
           {
             Parameter result = resp.getReturnValue();
             String tracking_number = (String) result.getValue();
             out.println("\nThe tracking number is\n\n" + tracking_number);
           }
           else
           {
             Fault fault = resp.getFault();

             out.println("Generated fault: ");
             out.println ("  Fault Code   = " + fault.getFaultCode());
             out.println ("  Fault String = " + fault.getFaultString());
           }
         }
         catch (MalformedURLException e)  {
           out.println("Malformed URL Exception\n");
         }
         catch (SOAPException e)  {
           out.println("SOAP Exception\n");
         }
     }
 }

© 2002 OneOutBox