A progress bar is one of the most useful widgets for a user interface when the user can perform lengthy tasks. Unfortunately, while it's a widget very often found in desktop applications it's not so common in web applications. The reason for this is that it's not so obvious how to implement them.
In fact, not so many years ago I remember saying to a customer that it was not possible to show a bar to show the progress of a file upload, and shortly after that Brian added that functionality to the Liferay's Document Library. When I looked at the implementation I felt really dumb, because it's actually super simple.
So the answer is yes, web applications can have progress bars. Not only for file uploads but for any task that might take more than a few seconds. And if used in a smart way they can be a very important factor to improve the usability of a web application. As an example look at a screenshot of one of the tools I'm working on lately, an importer of a whole wiki from MediaWiki to Liferay's new wiki:
As you can see in this case I've chosen to have two different progress bar. One for the upload and one for the actual importing process. That way the user is always up to date on the status of this operation which might take a while to complete.
If you are interested in knowing how this works or would like to add it to your own portlets don't miss the wiki article How to add a progres bar to my portlet.

