Dando feedback

3 respostas
Edufa

Estou usando o vraptor

Eu tenho um método que demora um monte e simplificado é mais ou menos assim

log("Consultando datas ...");
abreConsulta(...);
log("Atualizando datas ...");
int datasAtualizadas = 0;
while(rs.next()) {
	atualiza(...);
	datasAtualizadas++;
	System.out.print(".");
	if (datasAtualizadas % 10 == 0)
		System.out.print(" ");
	if (datasAtualizadas % 50 == 0) {
		System.out.print(" 50");
		if (datasAtualizadas % 500 == 0)
			System.out.print(" "+datasAtualizadas);
		System.out.println("");
	}
}

Tentei colocar o ‘loading’ usando ajax, mesmo assim o método demora, aí cliente impaciente acha que não funciona clica de volta, etc

Aí coloquei os pontinhos, porém tem como jogar isto no browser para ele mostrar os pontinhos de forma incremental, e assim o cliente ter o feedback e ver que está executando?

3 Respostas

Guevara

Vc quer uma barra de progresso?
http://plugins.jquery.com/project/jQueryProgressBar
Se for isso têm mais no Google, é só jogar “jquery bar progress”.
Abraço!

Edufa

Ótimo, uma barra de progresso resolve muito bem além de ficar visualmente mais bonito.

E vc sabe como ficaria o controller do vraptor, o que mudaria para eu avisar o progress gradualmente ?

Lucas_Cavalcanti

um dos jeitos é fazer assincronamente

o primeiro request só começa o trabalho, e depois via ajax vc fica fazendo polling (perguntando a cada x segundos) pra ver se já terminou… e vc pode retornar a porcentagem de pronto nesse polling e atualizar a barra de progresso

Criado 16 de setembro de 2010
Ultima resposta 16 de set. de 2010
Respostas 3
Participantes 3