bom pessoal uso essa tabelinha, so que qdo adiciono um novo ou deleto essa lista nao atualiza como faço isso ??? vlw
<p:dataTable var="amigos" value="#{AmigosBean.listaAmigos}"
paginator="true" rows="10" rowKey="#{amigos.idUsuario}"
selection="#{AmigosBean.amigoSelecionado}" selectionMode="single"
rowsPerPageTemplate="5,10" rendered="true" >
<f:facet name="header" >Lista de Amigos </f:facet>
<p:column style="width:50px">
<h:outputText value="#{amigos.emailAmigo}" />
</p:column>
<f:facet name="footer">
<p:commandButton id="viewButton" value="visualizar" icon="ui-icon-search"
update=":display" oncomplete="amigosDialog.show()"/>
</f:facet>
</p:dataTable>
poste seu datatable completo
cadê o delete (Onde vc chama ele)?
Acho que falta você atribuir um id ao seu datatable.
E coloca esse id no update
pus o id e num foi :s
<h:form id="form10">
<p:dataTable id="data" var="amigos" value="#{AmigosBean.listaAmigos}"
paginator="true" rows="10" rowKey="#{amigos.idUsuario}"
selection="#{AmigosBean.amigoSelecionado}" selectionMode="single"
rowsPerPageTemplate="5,10" rendered="true" >
<f:facet name="header" >Lista de Amigos </f:facet>
<p:column style="width:50px">
<h:outputText value="#{amigos.emailAmigo}" />
</p:column>
<f:facet name="footer">
<p:commandButton id="viewButton" value="visualizar" icon="ui-icon-search"
update=":display" oncomplete="amigosDialog.show()"/>
</f:facet>
</p:dataTable>
</h:form>
<h:form id="display">
<p:dialog header="Dados do Amigo" widgetVar="amigosDialog" resizable="false"
width="400" showEffect="explode" hideEffect="explode" style="height: 200px;width: 100px ; text-align: center">
<h:panelGrid id="gol">
<h:outputText value="Nome:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.nomeAmigo}"
style="font-weight:bold"/>
<br/>
<h:outputText value="SobreNome:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.sobreNome}"
style="font-weight:bold"/>
<br/>
<h:outputText value="Endereço:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.end}"
style="font-weight:bold"/>
<br/>
<h:outputText value="Bairro:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.bairro}"
style="font-weight:bold"/>
<br/>
<h:outputText value="Cidade:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.cidade}"
style="font-weight:bold"/>
<br/>
<h:outputText value="RG:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.rg}"
style="font-weight:bold"/>
<br/>
<h:outputText value="CPF:" />
<h:outputText value="#{AmigosBean.amigoSelecionado.cpf}"
style="font-weight:bold"/>
<br/><br/><br/><br/><br/>
<center>
<p:commandButton value="Deletar Amigo" type="submit" ajax="false"
actionListener="#{AmigosBean.deletarAmigo()}"
update=":data" />
</center>
</h:panelGrid>
</p:dialog>
</h:form>
<h:form id="display2">
<p:dialog header="Cadastro de Amigos" widgetVar="AdicionarDialog" resizable="false"
width="400" showEffect="explode" hideEffect="explode">
<h:outputLabel value="#{AmigosBean.sucesso}" />
<p:commandButton value="Ok"
type="submit" ajax="false"
update=":data" />
</p:dialog>
</h:form>
Não precisa repopular a propriedade AmigosBean.listaAmigos, após você inserir ou excluir um valor não ?
Já tive esse problema, veja no próprio showcase do prime com implementar um datamodel para a tabela;
e use ele no value no lugar da própria lista, quanto houver modificação na lista você reconstrói o datamodel
Dá uma olhada nessse tópico.
Eu perguntei a pessoa e ela disse que quando inseria um registro, a tabela se atualizava para mostrar o novo registro.
Boa sorte.
bem pessoal, eu possuo um dialog onde nele contem um formulario de cadastro e ainda dentro do formulario so que na parte de baixo possuo um dialog, cadastrar está funcionando tranquilamente, porem eu queria que ao clicar no objeto do datatable ele...