So under what circumstances would we see a problem if we don't use the
MultiThreadedHttpConnectionManager in the WebDAV client?  Anytime we try to
use a multithreaded client configuration??

Warwick



-----Original Message-----
From: Ingo Brunberg [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, September 08, 2004 7:18 AM
To: [EMAIL PROTECTED]
Subject: Re: URLGetMethod.executeMethod is hanging under multi threaded en
vironment


No, Slide's WebDAV client library does not use the
MultiThreadedHttpConnectionManager, although changing this would be
straightforward. Perhaps we should make this configurable or simply use that
by default.

This discussion already came up several times, but noone insisted on really
changing that.

Ingo

> Hi Ingo,
> 
> Is this applicable for other Slide client applications too? Does the 
> Slide WebDAV client make use of the MultiThreadedHttpConnectionManager 
> or is there something that I need to do in my application to enable 
> this?
> 
> Thanks,
> Warwick
> 
> 
> 
> -----Original Message-----
> From: Koundinya (Sudhakar Chavali) 
> [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, September 07, 2004 1:03 PM
> To: Slide Users Mailing List
> Subject: Re: URLGetMethod.executeMethod is hanging under multi threaded
> environment
> 
> 
> Thankyou Ingo,
> 
> this solved my problem.
>  if (manager == null) {
>         manager = new MultiThreadedHttpConnectionManager();
>              manager.setMaxTotalConnections(30);
>         manager.setMaxConnectionsPerHost(10);
>       }
>       client = new HttpClient(manager);
> 
> 
> --- Ingo Brunberg <[EMAIL PROTECTED]> wrote:
> 
> > > This is how I am getting the Client Instance.
> > > 
> > >       org.apache.commons.httpclient.HttpURL url = (org.apache.commons.
> > >           httpclient.HttpURL) getURL(path + "/" + user);
> > > 
> > >
> org.prithvi.docparser.microsoft.msexchange.apache.OwaWebdavResource
> > >           webDavResourceFile = getWebResource(
> > >           url);
> > > 
> > >       //get the client session
> > >       client = webDavResourceFile.retrieveSessionInstance();
> > > 
> > > Is this instance comes from SimpleConnectionManager ??
> > 
> > Simple answer, yes.
> > 
> > Two notes:
> > - Don't use UrlGetMethod. It's deprecated. Just use GetMethod.
> > - As a first solution try to surround the following two lines of your
> >   code given below with a synchronized(client) {} block:
> > 
> >   int status = client.executeMethod(getMethod);
> >   byte attachmentBytes[] = getMethod.getResponseBody();
> > 
> > Regards,
> > Ingo
> > 
> > 
> > > 
> > > thanks for trying to helping me
> > > 
> > > Sudhakar
> > > 
> > > 
> > > 
> > > 
> > > 
> > > --- Ingo Brunberg <[EMAIL PROTECTED]> wrote:
> > > 
> > > > First, this is not quite the right list for asking this 
> > > > question.
> > > > It would have better been asked on the commons-httpclient-dev 
> > > > list.
> > > > 
> > > > But anyway, your code snippet does not show how you create the
> > > > HttpClient instance that you use. Be aware that by default you get 
> > > > one that uses the so called SimpleConnectionManager. You cannot 
> > > > use that one to access the same connection concurrently from more 
> > > > than one thread. If you want HttpClient to manage the connections 
> > > > for you in a multithreaded environment, you should use the 
> > > > MutliThreadedConnectionManager.
> > > > 
> > > > Ingo
> > > > 
> > > > > Hello Guys,
> > > > > 
> > > > > Subject: URLGetMethod.executeMethod is hanging under multi
> > > > > threaded environment
> > > > > 
> > > > > Please see the folloiwng code. I am trying to download the 
> > > > > mails
> > > > > of MS Exchange Server
> > using
> > > > > URLGetMethod.executeMethod. But when execution pointer comes 
> > > > > to
> > > > > the thread area (URLGetMethod.executemethod),
> > > > > 
> > > > > URLGetMethod.executemethod is not coming out of it's loop. 
> > > > > Could
> > > > > you please explain what
> > is
> > > > the
> > > > > problem with this code??
> > > > > 
> > > > > 
> > > > > class SaveAttachmentThread
> > > > >     extends Thread
> > > > >     implements Runnable {
> > > > >   static int threadCount = 0;
> > > > >   String uri = "";
> > > > >   String strAttachmentName = "";
> > > > >   private org.apache.commons.httpclient.HttpClient client = null;
> > > > >   org.apache.commons.httpclient.methods.UrlGetMethod
> > > > > attachmentMethod = null;
> > > > > 
> > > > >   public SaveAttachmentThread(String uri, String 
> > > > > strAttachmentName,
> > > > >
> org.apache.commons.httpclient.HttpClient client) {
> > > > >     this.uri = uri;
> > > > >     this.strAttachmentName = strAttachmentName;
> > > > >     this.client = client;
> > > > > 
> > > > >   }
> > > > > 
> > > > >   public
SaveAttachmentThread(org.apache.commons.httpclient.methods.
> > > > >                               UrlGetMethod _getMethod, String
> attachment) {
> > > > >     attachmentMethod = _getMethod;
> > > > >     this.strAttachmentName = attachment;
> > > > >   }
> > > > > 
> > > > >   public void run() {
> > > > >     //strAttachmentName = URLDecoder.decode(strAttachmentName);
> > > > >     System.err.println("Saved to " + strAttachmentName);
> > > > >     System.err.println("URL :" + uri);
> > > > >     try {
> > > > > 
> > > > > 
> > > > >         System.err.println("Saving the URL :" +
strAttachmentName);
> > > > >         org.apache.commons.httpclient.methods.UrlGetMethod 
> > > > > getMethod
> = new org.
> > > > >             apache.commons.httpclient.methods.UrlGetMethod(uri);
> > > > >         int status = client.executeMethod(getMethod);
> > > > > 
> > > > > 
> > > > >       byte attachmentBytes[] = getMethod.getResponseBody();
> > > > >       FileOutputStream fout = new
> FileOutputStream(strAttachmentName);
> > > > >       fout.write(attachmentBytes);
> > > > >       fout.close();
> > > > >       fout = null;
> > > > > 
> > > > >       threadCount++;
> > > > >       System.err.println(threadCount);
> > > > > 
> > > > >     }
> > > > >     catch (Throwable e) {
> > > > >       System.err.println("Error raised while saving the URI : " +
> > > > >                          strAttachmentName);
> > > > >       e.printStackTrace();
> > > > >     }
> > > > >   }
> > > > > }
> > > > > 
> > > > > 
> > > > > Thanks
> > > > > Sudhakar
> > > > > 
> > > > > 
> > > > > 
> > > > > =====
> > > > > "No one can earn a million dollars honestly."- William 
> > > > > Jennings
> > > > > Bryan (1860-1925)
> > > > > 
> > > > > "Make everything as simple as possible, but not simpler."-
> > > > > Albert Einstein (1879-1955)
> > > > > 
> > > > > "It is dangerous to be sincere unless you are also stupid."-
> > > > > George Bernard Shaw
> > (1856-1950)
> > > > > 
> > > > > 
> > > > >               
> > > > > __________________________________
> > > > > Do you Yahoo!?
> > > > > New and Improved Yahoo! Mail - Send 10MB messages!
> > > > > http://promotions.yahoo.com/new_mail
> > > > 
> > > > 
> > > > ----------------------------------------------------------------
> > > > --
> > > > ---
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > 
> > > > 
> > > 
> > > 
> > > =====
> > > "No one can earn a million dollars honestly."- William Jennings
> > > Bryan (1860-1925)
> > > 
> > > "Make everything as simple as possible, but not simpler."- Albert
> > > Einstein (1879-1955)
> > > 
> > > "It is dangerous to be sincere unless you are also stupid."- 
> > > George
> > > Bernard Shaw (1856-1950)
> > > 
> > > 
> > >           
> > > __________________________________
> > > Do you Yahoo!?
> > > Yahoo! Mail - 50x more storage than other providers!
> > > http://promotions.yahoo.com/new_mail
> > 
> > 
> > --------------------------------------------------------------------
> > -
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > 
> > 
> 
> 
> =====
> "No one can earn a million dollars honestly."- William Jennings Bryan
> (1860-1925)
> 
> "Make everything as simple as possible, but not simpler."- Albert 
> Einstein
> (1879-1955)
> 
> "It is dangerous to be sincere unless you are also stupid."- George 
> Bernard Shaw (1856-1950)
> 
> 
>               
> _______________________________
> Do you Yahoo!?
> Win 1 of 4,000 free domain names from Yahoo! Enter now. 
> http://promotions.yahoo.com/goldrush


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

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

Reply via email to