Thanks for any feedback!

I have attached two things, the code I used to connect with the http-commons library and the code which I am trying to use to connect with the webdav api.

I was using the HTTP Commons example code to connect...this works, but since it's not using the webdav api, I can't make requests like propfind etc....

import java.io.IOException;

import org.apache.commons.httpclient.Credentials;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.UsernamePasswordCredentials;
import org.apache.commons.httpclient.methods.GetMethod;

/**
*
* This is a simple text mode application that demonstrates
* how to use the Jakarta HttpClient API.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Jeff Dever</a>
* @author Ortwin Gl�ck
*/
public class TrivialApp
{

private static final void printUsage()
{
System.out.println();
System.out.println("Usage: java -classpath <classpath> [-Dorg.apache.commons.logging.simplelog.defaultlog=<loglevel>] TrivialApp <url> [<username> <password>]");
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> - some valid URL");
System.out.println("<username> - username for protected page");
System.out.println("<password> - password for protected page");
System.out.println();
}


   public static void main(String[] args)
   {
       if ((args.length != 1) && (args.length != 3)) {
           printUsage();
           System.exit(-1);
       }

       Credentials creds = null;
       if (args.length >= 3) {
           creds = new UsernamePasswordCredentials(args[1], args[2]);
       }

       //create a singular HttpClient object
       HttpClient client = new HttpClient();

//establish a connection within 5 seconds
// client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);


       //set the default credentials
       if (creds != null) {
           client.getState().setCredentials(null, null, creds);
       }

       String url = args[0];
       HttpMethod method = null;

//create a method object
method = new GetMethod(url);
method.setFollowRedirects(true);
method.setRequestHeader("Content-Type","content=\"text/xml; charset=utf-8\"");
method.setRequestHeader("Accept","content=\"text/xml\"");


       //execute the method
       String responseBody = null;
       try{
           client.executeMethod(method);
           responseBody = method.getResponseBodyAsString();
       } catch (HttpException he) {
           System.err.println("Http error connecting to '" + url + "'");
           System.err.println(he.getMessage());
           System.exit(-4);
       } catch (IOException ioe){
           System.err.println("Unable to connect to '" + url + "'");
           System.exit(-3);
       }


//write out the request headers System.out.println("*** Request ***"); System.out.println("Request Path: " + method.getPath()); System.out.println("Request Query: " + method.getQueryString()); Header[] requestHeaders = method.getRequestHeaders(); for (int i=0; i<requestHeaders.length; i++){ System.out.print(requestHeaders[i]); }

       //write out the response headers
       System.out.println("*** Response ***");
       System.out.println("Status Line: " + method.getStatusLine());
       Header[] responseHeaders = method.getResponseHeaders();
       for (int i=0; i<responseHeaders.length; i++){
           System.out.print(responseHeaders[i]);
       }

       //write out the response body
       System.out.println("*** Response Body ***");
       System.out.println(responseBody);
       //clean up the connection resources
       method.releaseConnection();
       method.recycle();

       System.exit(0);
   }
}


//Simple test of slide webdav api


import org.apache.webdav.lib.WebdavResource;
import org.apache.util.HttpURL;

class Webdav
{

public static void main(String args[])
{

try
{
WebdavResource temp=new WebdavResource(new HttpURL("http://qa004:8080/a1";));
temp.setUserInfo("Admin", "password");
temp.setHttpURL(new HttpURL("http://qa004:8080/a1";));


}catch (Exception e) { }

}

}



From: Ingo Brunberg <[EMAIL PROTECTED]>
Reply-To: "Slide Users Mailing List" <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: Re: Newbie Authentication Questions
Date: Thu, 8 Jan 2004 17:43:09 +0100

In my understanding it should not matter if you use digest or basic
authentication as these are handled transparently by httpclient.

How about posting your code that uses httpclient directly?

Ingo

> Hello all,
>
> I'm having a very difficult time understanding how to use authentication
> with the webdav/slide api. If anyone has ANY code they wouldn't mind
> sharing, it would be greatly appreciated!!! Or even a javadoc for the
> client in cvs. What I'm trying to do is connect to my webdav server with
> digest authentication...but I have created one with basic authentication as
> well that I can not connect to with the api. I am however able to connect
> to these servers with different applications and simple code I have written
> which uses http-commons directly, so I know they are working.
>
> THANKS!
> --Jeff
>
> _________________________________________________________________
> Check your PC for viruses with the FREE McAfee online computer scan.
> http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963



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


_________________________________________________________________
Working moms: Find helpful tips here on managing kids, home, work � and yourself. http://special.msn.com/msnbc/workingmom.armx



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



Reply via email to