Zhaohua,

I'll look into it. I can expect to get a response from me by the end of
the week the latest.

Oleg


On Wed, 2005-08-03 at 15:36 -0400, Zhaohua Meng wrote:
> Sorry I have to split this mail in 2 since apache.org mail server wont' 
> allow large messages.
> The code:
> 
> import java.io.File;
> import java.io.FileInputStream;
> import java.io.IOException;
> import java.security.Security;
> import java.util.ArrayList;
> import java.util.List;
> 
> import javax.xml.parsers.ParserConfigurationException;
> 
> import org.apache.commons.httpclient.Credentials;
> import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler;
> import org.apache.commons.httpclient.Header;
> import org.apache.commons.httpclient.HttpClient;
> import org.apache.commons.httpclient.HttpException;
> import org.apache.commons.httpclient.HttpVersion;
> import org.apache.commons.httpclient.NTCredentials;
> import org.apache.commons.httpclient.UsernamePasswordCredentials;
> import org.apache.commons.httpclient.auth.AuthPolicy;
> import org.apache.commons.httpclient.auth.AuthScheme;
> import org.apache.commons.httpclient.auth.AuthScope;
> import 
> org.apache.commons.httpclient.auth.CredentialsNotAvailableException;
> import org.apache.commons.httpclient.auth.CredentialsProvider;
> import org.apache.commons.httpclient.cookie.CookiePolicy;
> import org.apache.commons.httpclient.methods.GetMethod;
> import org.apache.commons.httpclient.methods.InputStreamRequestEntity;
> import org.apache.commons.httpclient.methods.PostMethod;
> import org.apache.commons.httpclient.methods.StringRequestEntity;
> import org.apache.commons.httpclient.params.HttpMethodParams;
> 
> /**
>  *
>  * 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 Glück
>  * @author Oleg Kalnichevski
>  */
> public class PostXML {
>         private Object password;
> 
>     /**
>      *
>      * 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 {
>         System.setProperty("org.apache.commons.logging.Log", 
> "org.apache.commons.logging.impl.SimpleLog");
>         System.setProperty(
> "org.apache.commons.logging.simplelog.showdatetime", "true");
>         System.setProperty(
> "org.apache.commons.logging.simplelog.log.httpclient.wire", "debug");
>         System.setProperty(
> "org.apache.commons.logging.simplelog.log.org.apache.commons.httpclient", 
> "debug"); 
>         postWithSupportedAuth(); 
>    }
>     public static void postWithSupportedAuth() throws IOException, 
> HttpException, IllegalAccessException, InstantiationException, 
> ClassNotFoundException, ParserConfigurationException {
>         String secProviderName = "com.sun.crypto.provider.SunJCE";
>         java.security.Provider secProvider = 
> (java.security.Provider)Class.forName(secProviderName).newInstance();
>         Security.addProvider(secProvider);
>         String strURL = "
> http://driman8.cgsh.com/worksite/services/factory.asmx";;
>         String strXMLFilename = "C:/project/junk/Test/Java 
> Source/request.xml";
>                 String requestDoc = 
> ImanageCreateWorkspaceSOAP.getTestDoc(); 
>         // Prepare HTTP post
>         PostMethod post = new PostMethod(strURL);
>           post.setRequestEntity(new StringRequestEntity(requestDoc,
> "text/xml; charset=UTF-8","UTF-8"));
>         post.setRequestHeader("Content-type", "text/xml; charset=UTF-8");
>         post.setRequestHeader("SOAPAction",
>                         "\"http://worksite.imanage.com/CreateWorkspace\"";
> ); 
>         HttpClient httpclient = new HttpClient(); 
>           post.getParams().setVersion(HttpVersion.HTTP_1_1);
>  httpclient.getParams().setParameter(CredentialsProvider.PROVIDER,
>                 new PostXML.MyCredentialsProvider()); 
>         try {
>             int result = httpclient.executeMethod(post);
>             System.out.println("Response status code: " + result);
>             System.out.println("Response body: ");
>         } finally {
>             post.releaseConnection();
>         }
>      }
>     public static void getWithBasicAuth(String url, String username, 
> String password, String host, int port, String domain) throws 
> HttpException, IOException {
>         //http://www.developer.ibm.com/partnerworld/mem/index.html
>                 GetMethod get = new GetMethod(url);
>                 HttpClient httpclient = new HttpClient();
>         httpclient.getState().setCredentials(
>             new AuthScope(host, port,domain), new 
> NTCredentials(username,password,host,domain));
>             int result = httpclient.executeMethod(get);
>             // Display status code
>             System.out.println("Response status code: " + result);
>             // Display response
>             System.out.println("Response body: ");
>             System.out.println(get.getResponseBodyAsString());
>  
> 
>     }
>     public static class MyCredentialsProvider implements 
> CredentialsProvider {
>  
>                 /**
>                  * @see 
> org.apache.commons.httpclient.auth.CredentialsProvider#getCredentials(AuthScheme,
>  
> String, int, boolean)
>                  */
>                 public Credentials getCredentials(
>                         AuthScheme scheme,
>                         String host,
>                         int port,
>                         boolean proxy)
>                         throws CredentialsNotAvailableException {
>                                 return new UsernamePasswordCredentials(
> "myusername","mypassword");
>                 }
> 
>         }
> }
> 
> This message is being sent from a law firm and may contain confidential or 
> privileged information.  If you are not the intended recipient, please advise 
> the sender immediately by reply e-mail and delete this message and any 
> attachments without retaining a copy.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to