You are viewing a plain text version of this content. The canonical link for it is here.
Posted to httpclient-users@hc.apache.org by Veni Garg <Ve...@clcsiii.com> on 2006/08/10 23:16:39 UTC

Trouble compiling one of the samples

Hey all!

I am trying to compile a Sample app PostXML.java and can't seem to compile.
I see that it can't seem to find the "commons-httpclient.jar and
commons-logging.jar" in the Classpath and even specify it with
the -classpath option, but it refuses to recognise them.

Any ideas/tips?? I have looked at and looked at it, another set of eyes
might help. I downloaded the httpclient.jar and loggin.jar from the HTTP
Client site.

Thanks!
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------
import java.io.File;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.FileRequestEntity;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.RequestEntity;

/**
 *
 * This is a sample application that demonstrates
 * how to use the Jakarta HttpClient API.
 *
 * This application sends an XML document
 * to a remote web server using HTTP POST
 *
 * @author Sean C. Sullivan
 * @author Ortwin Glueck
 * @author Oleg Kalnichevski
 */
public class PostXML {

    /**
     *
     * Usage:
     *          java PostXML http://mywebserver:80/ c:\foo.xml
     *
     *  @param args command line arguments
     *                 Argument 0 is a URL to a web server
     *                 Argument 1 is a local filename
     *
     */
    public static void main(String[] args) throws Exception {
        if (args.length != 2) {
            System.out.println("Usage: java -classpath <classpath>
[-Dorg.apache.commons.logging.simplelog.defaultlog=<loglevel>] PostXML <url>
<filename>]");
            System.out.println("<classpath> - must contain the
commons-httpclient.jar and commons-logging.jar");
            System.out.println("<loglevel> - one of error, warn, info,
debug, trace");
            System.out.println("<url> - the URL to post the file to");
            System.out.println("<filename> - file to post to the URL");
            System.out.println();
            System.exit(1);
        }
        // Get target URL
        String strURL = args[0];
        // Get file to be posted
        String strXMLFilename = args[1];
        File input = new File(strXMLFilename);
        // Prepare HTTP post
        PostMethod post = new PostMethod(strURL);
        // Request content will be retrieved directly
        // from the input stream
        RequestEntity entity = new FileRequestEntity(input, "text/xml;
charset=ISO-8859-1");
        post.setRequestEntity(entity);
        // Get HTTP client
        HttpClient httpclient = new HttpClient();
        // Execute request
        try {
            int result = httpclient.executeMethod(post);
            // Display status code
            System.out.println("Response status code: " + result);
            // Display response
            System.out.println("Response body: ");
            System.out.println(post.getResponseBodyAsString());
        } finally {
            // Release current connection to the connection pool once you
are done
            post.releaseConnection();
        }
    }
}


Re: Trouble compiling one of the samples

Posted by Roland Weber <RO...@de.ibm.com>.
Hello,

"Veni Garg" <Ve...@clcsiii.com> wrote on 10.08.2006 23:16:39:

> I am trying to compile a Sample app PostXML.java and can't seem to 
compile.
> I see that it can't seem to find the "commons-httpclient.jar and
> commons-logging.jar" in the Classpath and even specify it with
> the -classpath option, but it refuses to recognise them.

This is clearly a problem of your tool set. Verify the CLASSPATH
variable again, make sure that you are using the correct separator
char between classpath elements, make sure that the path to the
JARs is either absolute, or that you are compiling from the
directory from which relative paths are correct, yada yada yada.

At runtime, you'll also need commons-codec.

cheers,
  Roland


---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-user-help@jakarta.apache.org