| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 16:37:49
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Pessoal,
Mais uma vez venho solicitar ajuda.
Até encontrei problemas semelhantes... mas as soluções apresentadas eu não consegui resolver.
Meu objetivo é quando selecionar uma opção do comboBox, recarregar a tabela.
O meu problema é que quando o método que recarrega é chamada o valor do idCargo está sempre nulo.
Abaixo o código:
This message was edited 1 time. Last update was at 19/08/2009 16:43:18
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 16:54:56
|
diegopctba
Debugger
Membro desde: 23/05/2008 15:56:15
Mensagens: 50
Localização: Curitiba
Offline
|
Cara, tenta retirar o atributo immediate na linha 3.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 16:58:10
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Retirei e tbm não funcionou.
Alias qdo estou depurando, todo os atributos do meu Bean chegam com valores null.
This message was edited 1 time. Last update was at 18/08/2009 17:01:21
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:07:21
|
diegopctba
Debugger
Membro desde: 23/05/2008 15:56:15
Mensagens: 50
Localização: Curitiba
Offline
|
Normalmente eu uso da seguinde maneira (utilizando seu problema como exemplo):
Caso não dê certo, tente usar o a4j:keepAlive, pois talvez seja o problema de se perder nas requisições de páginas.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:28:00
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Valeu pela ajuda diego.
Mas com o keepalive piorou o resultado.
Ele zerou a minha tabela.
O dia todo tentando fazer isso funcionar.
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:30:51
|
Tchello
GUJ Master
![[Avatar]](/images/avatar/901db33c84e81b1a30e59949bbcb112b.png)
Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Online
|
Cara, é seguinte:
Toda vez que você usa a tag ajaxSingle="true" você "processa" SOMENTE esse componente, no caso de um a4j:support o componente pai dele, ou seja, será atribuido ao ManagedBean somente esse cara.
Isso é econômico quando você só quer passar esse cara mesmo, mas caso queira passar mais coisas pro ManagedBean você tem duas opções:
1 - tira a tag ajaxSingle="true", que por default é false;
2 - especifica na tag process="" os ids dos componentes que deseja processar, separados por vírgula, ai esses serão atribuidos ao ManagedBean;
Vale a pena estudar o conjunto das seguintes tags quando se usa a4j:
- ajaxSingle :processa somente esse componente e no caso de a4j:support o componente pai
- process : adiciona a lista de componentes processados os ids especificados aqui, separados por virgula
- ajaxRendered : presente nos a4j:outputPanel, que tem por default false e se setado true será reRenderizado a TODA requisição ajax;
- reRender : indica quais componentes você quer re-renderizar;
- limitToList : tem como padrão false, mas caso seja setado true limitará a lista especificada no reRender os componentes que serão re-renderizados e mesmo que haja algum com ajaxRendered="true" esse não será re-renderizado.
Cara, fica muito atento a essas 5 tags, se forem bem utilizadas da pra incrementar uma boa performance em ajax no seu sistema JSF, uma vez que carregará somente o necessário.
Demorei pra pegar a "sincronia" desses caras, infelizmente ninguém me alertou e aprendi na raça.
Recomendo usar o a4j:outputPanel com ajaxRendered = "true" somente quando tiver um <h:messages> ou <rich:messages> dentro dele, pra exibir a mensagem de erro sem que seja necessário especifca-lo em todo reRender.
Boa sorte!!!
ps: tem alguns componentes, como o selectOneMenu que não funcionam sempre quando tão no process de algum a4j quando estão em ModalPanels, é uma pena =/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:40:39
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Tchello valeu pela explicação.
Mesmo tirando o ajaxSingle não funcionou.
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:46:54
|
Tchello
GUJ Master
![[Avatar]](/images/avatar/901db33c84e81b1a30e59949bbcb112b.png)
Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Online
|
Troca isso:
Por isso:
E posta aqui o método atualizaDataTable preu dar uma olhada por favor.
Abraços.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:49:19
|
Javabuntu
GUJ Master
![[Avatar]](/images/avatar/00053f5e11d1fe4e49a221165b39abc9.jpg)
Membro desde: 08/02/2007 17:15:32
Mensagens: 1315
Localização: Brasília
Offline
|
Só pra teste faça o seguinte, no seu código original postado, coloque a parte do comboBox em um form <a4j:form> e a parte da tabela em outro form <a4j:form>... e no seu <a4j:support tire o ajaxSingle="true" porque não precisaria nesse caso...
|
SCJP 6
SCJD
SCWCD 5
Itil V2 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:51:37
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
O método é este:
O método populaTabela é este:
Se montar o selectOneMenu sem o a4j:support... e usar um botão para fazer a mesma coisa funciona.
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/08/2009 17:55:10
|
Tchello
GUJ Master
![[Avatar]](/images/avatar/901db33c84e81b1a30e59949bbcb112b.png)
Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Online
|
Alterou o que sugeri ali em cima?
Experimente trocar o <h:form> por <a4j:form>.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/08/2009 15:10:10
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Galera fiz as modificações que vocês sugeriram e não funcionou.
Abaixo o código atual:
Aqui o método que popula a tabela:
E aqui o método que deveria ser chamado pelo a4j:support
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/08/2009 16:01:55
|
w1l14n
JavaBaby
![[Avatar]](/images/avatar/3344c30b90c7038aeb1b0dedc8def929.png)
Membro desde: 11/07/2008 09:36:13
Mensagens: 92
Offline
|
Resolvido.
apenas mudei o nome do método de getAtualizaDataTable
para atualizaDataTable
E funcionou.
Valeu pela ajuda.
|
Java Rules!
SCJP 5
SCWCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/12/2009 20:50:33
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
w1l14n wrote:Resolvido.
apenas mudei o nome do método de getAtualizaDataTable
para atualizaDataTable
E funcionou.
Valeu pela ajuda.
Olá w1l14n, blz??
Cara, estava lendo seu post pra ver se me dava uma luz pra resolver meu problema q é muito parecido com o seu... tem como vc postar seu método getConsulta() da tua classe ParticipanteDao????
Me ajudaria muito.
Valeu!!!!
|
 |
|
|
 |
|
|