Rich Faces tabPanel, adicionando tabs dinamicamente

3 respostas
M

Galera, alguem ae sabe como posso adicionar uma tab em um tabPanel apos clicar em um commandLink e nao ter rerenderizar todo o tabpanel? Pq se eu adiciono uma tab e do um rerender no tabpanel, aparece a nova tab, porem as outras tabs q ja estao incluidas sao redenrizadas novamente, ocorrendo perda das modificacoes feitas pelo cliente. Eu gostaria de adicionar uma tab e nao mecher nas tabs ja adicionadas. Como no firefox por exemplo, vc da Ctrl + t, abre uma nova tab, vc entra no site e tudo bem, as outras tabs nao sao recarregadas novamente. Como faria isso no tabPanel do rich faces? Ou do tomahawk. Vlw galera.

3 Respostas

Javabuntu

cara o problema é que o seu tabPanel está sendo submetido por completo…

por acaso vc usando um único <h:form> ou a4j:form para o tabPanel inteiro, para todas as tabs :?: :?: se sim…provavelmente é isso…

tente usar um por tab e dá um reRender apenas na que acabou de criar…

pois aparemente vc está enviando tudo e por isso está renderizando as informações…

flw Hewerton

M

Eae mano, vlw pela resposta.
Bom eh um seguinte. Se eu adiciono a tab via codigo, eu preciso redenrizar todo o tabpanel, pq senao a tab nao aparece. E se eu crio ela e mando da um rerender so na nova criada, nao aparece tbm. :confused:

Javabuntu

compreendi melhor a situação…realmente se cirar e dar um reRender só na nova, não vai aparecer, pq ela ainda nem existe ainda…só daria certo se ela já existisse, por isso não apareceu…
eu uso muito o RichFaces mas o tabPanel eu nunca fiz dinâmico…alguns outros…mas não este…
agora a solução é realmente ter que renderizar o tabPanel inteiro…

cara faz o seguinte…não sei se dará certo…mas vamos tentar…
coloque seu tabPanel dentro de uma panel ajax…quando redenrizar talvez ele pegue apenas novos dados e não mexa nos ja inseridos…algo assim:

<a4j:outputPanel ajaxRendered="true"> <rich:tabPanel switchType="client"> <rich:tab id="xxx"/> suas tabs </rich:tabPanel> </a4j:outputPanel>

mas se possível coloque seu código que está gerando a tabPanel na classe…pra dar uma olhada e tentar te ajudar…

flw Hewerton

Criado 20 de janeiro de 2008
Ultima resposta 22 de jan. de 2008
Respostas 3
Participantes 2