Ajuda com ajax

2 respostas
D

tenhu duas TAB no meu projeto

<p:tab title="Grupo Gestao" id="idGrupoGestao">
						<h:panelGroup layout="block">
							<h:panelGrid style="width:100%">
								<p:dataTable id="dataGrupoGestao" style="width:100%"
									value="#{grupoGestaoDestinatarioBean.listGrupoGestao}" var="grupoGestao"
									paginator="true" rows="20" selectionMode="single"
									selection="#{grupoGestaoDestinatarioBean.selectGrupoGestao}"
									rowKey="#{grupoGestao.descricao}" >
									<p:ajax event="rowSelect" listener="#{grupoGestaoDestinatarioBean.carregaLista}" update="idDestinatario"/>
									
									<p:column headerText="Código" filterBy="#{grupoGestao.id_fantasia}" style="width:40px">
										<h:outputText value="#{grupoGestao.id_fantasia}" />
									</p:column>
									<p:column headerText="Grupo gestão" filterBy="#{grupoGestao.descricao}">
										<h:outputText value="#{grupoGestao.descricao}" />
									</p:column>
								</p:dataTable>
								
							</h:panelGrid>
						</h:panelGroup>
					</p:tab>

quando clico em uma linha dessa tabela, na teoria teria de dispara o ajax
que é para carrega uma lista para mostrar ela dentro de um datatble na TAB2 e utilizei o update="idDestinatario" para atualizar a datatable 2

segue o codigo da TAB

<p:tab title="Destinatário" id="idDestinatario" >
						<p:toolbar id="toolBar">
							<p:toolbarGroup align="left">
								<p:commandButton action="#{grupoGestaoDestinatarioBean.save}"
									value="Salvar" image="ui-icon ui-icon-disk" ajax="false" />
								<p:spacer width="3" />
								<p:commandButton action="#{promotorBean.cancelar}"
									value="Cancelar" ajax="false" image="ui-icon ui-icon-cancel" />
								<p:separator />
								<h:outputText id="idDescSelecionada"
									value="Grupo Gestao Selecionado : #{grupoGestaoDestinatarioBean.selectGrupoGestao.descricao}" />
							</p:toolbarGroup>
						</p:toolbar>

						<p:messages />

						<h:panelGrid columns="3" id="panelGridDestinatario" 
							columnClasses="coluna1asso, coluna2asso, coluna3asso">
							<h:panelGrid style="width:100%" id="panelGridTable1">
							<p:dataTable id="dataAcesso1"
								value="#{grupoGestaoDestinatarioBean.source}" style="width:100%"
								var="destinatario1" paginator="true" rows="10"
								selectionMode="multiple"
								selection="#{grupoGestaoDestinatarioBean.selectDestinatarios}"
								rowKey="#{destinatario1.razao_social}">
								<p:column headerText="Código" filterMatchMode="contains" style="width:40px"
									sortBy="#{destinatario1.id_fantasia}"
									filterBy="#{destinatario1.id_fantasia}">
									<h:outputText value="#{destinatario1.id_fantasia}" />
								</p:column>
								<p:column headerText="Destinatário" filterMatchMode="contains"
									sortBy="#{destinatario1.razao_social}"
									filterBy="#{destinatario1.razao_social}">
									<h:outputText value="#{destinatario1.razao_social}" />
								</p:column>
							</p:dataTable>
							</h:panelGrid>
							<h:panelGrid style="width:100%">
								<p:commandButton image="ui-icon ui-icon-arrowrefresh-1-w"
									value="Adicionar"
									action="#{grupoGestaoDestinatarioBean.adicionarDestinatario}"
									update="dataDestinatario1, dataDestinatario2">
								</p:commandButton>
								<p:commandButton image="ui-icon ui-icon-close" value="Remover"
									action="#{grupoGestaoDestinatarioBean.removerDestinatario}"
									update="dataDestinatario1, dataDestinatario2">
								</p:commandButton>
							</h:panelGrid>
							<h:panelGrid style="width:100%" id="panelGridTable2">
							<p:dataTable id="dataDestinatario2"
								value="#{grupoGestaoDestinatarioBean.target}" style="width:100%"
								var="destinatario2" paginator="true"
								selection="#{grupoGestaoDestinatarioBean.selectDestinatarios2}"
								rows="10" selectionMode="multiple"
								rowKey="#{destinatario2.razao_social}">
								<p:column headerText="Destinatários Adicionados"
									filterBy="#{destinatario2.razao_social}">
									<h:outputText value="#{destinatario2.razao_social}" />
								</p:column>
							</p:dataTable>
							</h:panelGrid>
						</h:panelGrid>

					</p:tab>

meu problema é que o metodo de carregaLista so funciona atrazado tipo, eu seleciono a primeira vez e nda acontece, ai quando clico na segunda vez e executa pelo anterior, e outra coisa é q a dataTable2 que é pra ser atualizada so atualiza quando aperto F5, ja procurei em varios lugares, alguem pode me ajudar??

2 Respostas

kritiuns

Você ta rodando isso dentro de um <h:form> ?
talvez seja isso…

D

to usado um :form geral
fora dos dois tab, o q vc acha?

Criado 7 de dezembro de 2011
Ultima resposta 7 de dez. de 2011
Respostas 2
Participantes 2