[ https://issues.apache.org/jira/browse/COCOON3-75?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13088753#comment-13088753 ]
Thorsten Scherler commented on COCOON3-75: ------------------------------------------ In the abstract class we provide the infrastructure to In POST: Create a progress object and store it in the session context with a unique id. In GET: retrieve object and get the current progress In our code we do the following as implementation: public class ProcessService extends AbstractAsyncronService { public RestResponse doGet() throws Exception { Object progress = getProgress(); return new TextResponse("{\"progress\":"+progress.toString()+" }", "application/json"); } public RestResponse doPost() throws Exception { setId(this.getClass().getCanonicalName()+name); // execute business logic in background super.bidExecutor.execute(this); // Answer the client, reporting we have done 2% return new TextResponse("{\"progress\":2"}", "application/json"); } // long running action that will be done in a seperate thread public void run() { // if we reach here we have done 5% progress this.updateProgress(5); //... do business logic and finish progress with this.updateProgress(100); } Our client is based on jquery ui progress bar. Where we post the form $.post('rest/ProcessService', { name: input }, function(data){ onSuccess(data); }, "json"); and in the onSuccess we invoke a loop to get the status like window.progressIntervalId = window.setInterval(function(){ //Getting current operation progress $.get('rest/ProcessService', { name: input }, function(data){ //Updating progress $("#progressbar").progressbar('value', data.progress); //If operation is complete if (data.progress == 100) { //Clear timer window.clearInterval(window.progressIntervalId); } }); }, 500); If you see this useful I can add the class and an example to the cocoon-rest module. > REST and asynchronous server side operations > -------------------------------------------- > > Key: COCOON3-75 > URL: https://issues.apache.org/jira/browse/COCOON3-75 > Project: Cocoon 3 > Issue Type: New Feature > Components: cocoon-rest > Reporter: Thorsten Scherler > Assignee: Thorsten Scherler > Attachments: AbstractAsyncronService.java > > > I am looking into implementing reporting server side operation progress with > jQuery UI Progressbar with our REST framework. > My basic idea as starting point is to use the GET to ask for the > progress of the processing and POST to invoke the work which reports the > progress. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira