Patent ID: 7587393

Claim:
A computer-implemented method for processing long-running requests, comprising: sending from a client a first page request to a server to render an HTML page within a browser on the client; wherein the HTML page includes at least one control; receiving from the server HTML from the first page result; rendering the HTML within the browser; generating a second page request; wherein the second page request instructs the server to treat the second page request as a long-running request that requests the control to be rendered within the browser; wherein the long-running request is a request to the server that indicates that the request when processed by the server exceeds a server timeout period for servicing the long-running request and in response to the long-running request the server sending data to the client at a rate that avoids triggering the server timeout period during processing of the long-running request; wherein the data sent by the server to the client is any type of data; receiving at the client the data sent from the server at a rate that avoids a timeout on the server; initiating the display of a progress UI within the control in response to generating the long-running request and the receiving data from the server such that the progress UI is displayed while the long-running request is being executed while maintaining the state of the HTML page, wherein the progress UI indicates the status of a long-running request while it is being executed; and hiding the progress UI in response to a determination that the long running request is complete.