Hi,

There really is no straight-forward way of doing this. In theory it goes against the basic nature of HTTP.

That being said, Michael McGrady implemented such a solution, and hopefully he will see this and be able to talk about it. I'll do my best to remember the basic theory...

You start by targeting your form submission to a new window. This is where your progress bar will display. In your servlet that recieves the request that contains the file upload, you spawn a new thread to handle the upload and return immediately with a page with some Javascript to periodically poll the servlet to get the progress of the upload (every 5 seconds for example). The servlet of course has to retain a reference to the thread handling the upload, and it has to have some sort of unique identifier to be able to request the status update. This identifier is passed to the servlet from the progress window. Once the upload completes, a page is returned to inform the user (might be in the popup still, might be a page that redirects the parent window of the popup to a completion page).

Michael will hopefully correct me or expand on this as appropriate, but that's what I recall being the basic theory behind his approach. I think his code was on the Struts Wiki at one point, you may want to go have a look and see.

--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com

Mashama McFarlane wrote:
I need some help. I am working with file uploads. The ideal file uploads will be large enough to justify a file upload progress indicator. I am trying to figure out the easiest way of doing this, but it is much more complicated than I originally thought. It would be nice if somebody out there can prove me wrong on that point. I know that if I can monitor the request as it comes into the servlet container, then I can extract out the content-length and then everything else is a matter of counting bytes, but where and how do I do this. This cannot happen in the servlet as, I am assuming, the whole request has been received in its entirity prior the servlet servicing the request. So where on the totem pole need I be. Please advise.



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

Reply via email to