A progress UI is displayed within a user's web page for long-running
requests. For each long-running request, a progress UI is displayed to
the user indicating that the long-running request is being processed
until the long-running request has been processed. The progress UI may be
a progress indicator showing the user the status of the processing, or
the status message could be some other message to the user indicating
that the long-running request is still being processed. While the
long-running request is being processed, data is sent from the server to
the user's browser at a rate such that the server performing the
long-running request does not time out. The current state of a web page
may be maintained such that when a long running request is made the web
page that contains the control that issued the long-running request is
not automatically refreshed when the long running request takes place.