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();
}
}
}