[RESOLVIDO]Primefaces progressBar como sincronizar a ação do botão com o inicio do progressBar

Pessoal sou iniciante em jsf e estou tentando utilizar o progressBar do primefaces, mas não sei como sincronizar o inicio do progress com a action do botão. Basicamente tenho um botão que executa uma simulação a partir do código abaixo: <p:commandButton action="#{simulacaoManagedbean.simular}" value="Simular" widgetVar="simular" />
Estou testando com o exemplo disponivel no site do primefaces que esta mais ou menos assim: <p:commandButton value="Start" type="button" onclick="pbAjax.start();startButton2.disable();" widgetVar="startButton2" /> <p:progressBar widgetVar="pbAjax" ajax="true" value="#{simulacaoManagedbean.progress}" labelTemplate="{value}%" styleClass="animated"> </p:progressBar>
O problema é que se coloco meu evento action junto com o onclick, somente o onclick funciona o action não faz nada, o mesmo ocorre se colocar o “simular” no onclick e se colocar um ActionListner ao invés do Action. Já tentei colocar um <p:ajax> dentro da progressBar, mas o unico evento que aceita é o “complete” e minha ação “simular” começa depois do progressBar ter terminado. Como faço para iniciar os dois ao mesmo tempo? Ou existe outra forma de utilizar a progressBar e de inicializa-la? Obs: meu Bean esta como SessionScoped.

Resolvido usando a seguinte forma.

[code]
<p:commandButton value=“Simular”
actionListener="#{simulacaoManagedbean.simular}" update="@form" onstart=“pbAjax.start()”>
</p:commandButton>

	 	<p:progressBar widgetVar="pbAjax" ajax="true"
						value="#{simulacaoManagedbean.progress}" labelTemplate="{value}%"
						styleClass="animated">
					</p:progressBar>  [/code]

esta procurando por essa solução

e gostaria de saber qual o valor da propriedade value do componente
<p:progressBar> é ela que sincroniza a barra de carregamento

gostaria de saber as configurações dela q vc fez

obrigado desde ja

Cara não sou nenhum expert no assunto e não entendi muito bem sua pergunta, mas vou tentar te ajudar. Primeiro tenho uma variável do tipo inteiro no meu Bean chamada progress, esta variável que ira ser acrescida até chegar a 100 (valor default da progressBar que pode ser alterado). É para esta variável que o value da progressBar esta apontando. Esta progressBar que utilizei é do exemplo da pagina do primefaces que utiliza ajax, então não tem segredo, é tudo magica…rsrs…, no seu evento que inicia o processo (ex: p:commandButton) você tem que chamar o progressBar através do nome que você atribuiu na widgetVar e o método start(), assim pbAjax.start(), com este método iniciado o progress fica chamando o Bean e fazendo get na variável progress do tipo inteiro, ou seja, a cada get que a variável estiver com valor diferente do que estava antes, o teu progress estará trabalhando. Como você ira fazer para sincronizar o progress com o método que foi chamado no evento, é questão de abordagem, a minha aplicação era simples e o progress era somente para se ter uma ideia de onde o processo estava, então eu fiz um método simplista que nem vou colocar aqui de feio que ficou…rsrsr, mas pelo que eu li um pouco, o correto é fazer através de thread. Espero ter ajudado, qualquer duvida posta ai, se puder eu ajudar porque não.

agora entendi, vc venculou um contador e a progress bar só vai atualizando apartir deste contador
é que fiz um método q nao consigo fazer ele carregar minha base. tentei colocar no action, actionlister
mas qdo coloco no onclick e no onstart ele funciona, mas qdo a pagina eh startada e nao qdo preciono o botao

<p:commandButton value="Simular" actionListener="#{simulacaoManagedbean.simular}" update="@form" onstart="pbAjax.start()"> </p:commandButton>
Simular é um método do meu Bean que tem uma rotina independente da variável int progress, enquanto executa este método essa variável é incrementada, fazendo com que a progressBar mude.

q o método executado eh o do actionListener eu sei

mas o meu aqui não executa no action e nem no actionListener

só executa no onclick mas qdo a tela eh carregada

saberia me falar o pq?

abrass