Author: olegk Date: Thu Jun 1 03:36:25 2006 New Revision: 410827 URL: http://svn.apache.org/viewvc?rev=410827&view=rev Log: Added PostSOAP example
Contributed by Paul King <paulk at asert.com.au> Added: jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java (with props) Added: jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java URL: http://svn.apache.org/viewvc/jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java?rev=410827&view=auto ============================================================================== --- jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java (added) +++ jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java Thu Jun 1 03:36:25 2006 @@ -0,0 +1,102 @@ +/* + * $Header$ + * $Revision$ + * $Date$ + * ==================================================================== + * + * Copyright 2002-2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ==================================================================== + * + * This software consists of voluntary contributions made by many + * individuals on behalf of the Apache Software Foundation. For more + * information on the Apache Software Foundation, please see + * <http://www.apache.org/>. + */ + +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 + * @author Paul King + */ +public class PostSOAP { + + /** + * + * Usage: + * java PostSOAP http://mywebserver:80/ SOAPAction c:\foo.xml + * + * @param args command line arguments + * Argument 0 is a URL to a web server + * Argument 1 is the SOAP Action + * Argument 2 is a local filename + * + */ + public static void main(String[] args) throws Exception { + if (args.length != 3) { + System.out.println("Usage: java -classpath <classpath> [-Dorg.apache.commons.logging.simplelog.defaultlog=<loglevel>] PostSOAP <url> <soapaction> <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("<soapaction> - the SOAP action header value"); + System.out.println("<filename> - file to post to the URL"); + System.out.println(); + System.exit(1); + } + // Get target URL + String strURL = args[0]; + // Get SOAP action + String strSoapAction = args[1]; + // Get file to be posted + String strXMLFilename = args[2]; + 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); + // consult documentation for your web service + post.setRequestHeader("SOAPAction", strSoapAction); + // 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(); + } + } +} Propchange: jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java ------------------------------------------------------------------------------ svn:keywords = Date Author Id Revision HeadURL Propchange: jakarta/commons/proper/httpclient/trunk/src/examples/PostSOAP.java ------------------------------------------------------------------------------ svn:mime-type = text/plain --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]