Update com PrimeFaces

Bom dia pessoal, estou com um pequeno problema. Tenho uma pagina que cadastra convites, logo abaixo deste form tenho um dataTable que lista
estes convites e exibe botões de excluir e alterar.
Quase tudo funciona normalmente, cadastra, edita e exclui.

1_ O problema é que ao editar e excluir não consigo atualizar a tela sendo necessário atualizar o browser com F5.
2_ Outro problema é que se eu faço um cadastro de convites ele atualiza o form, porém se eu atualizar o browser ele insere novamente
os dados no banco mesmo sem dados no formulário.

Segue a pagina

[code]
<p:tabView id=“aba” >

<p:tab id="Aba_Convite" title="Convite" >
    <br />
    <p:fieldset id="CadastroConvite" toggleable="true" legend="Novo Convite" style="font-family: 'Arial';">
        
        <!-- FORMULÁRIO PRINCIPAL -->
        <h:form id="formPrincipal"  > 
            <p:growl id="id" showDetail="true" life="4000" />
            <br />
            <h:panelGrid columns="3" cellpadding="80"  >
                
                <h:outputText value="Funcionario: " style="font-family: 'Verdana'; font-size: 12px" />
                <p:selectOneMenu id="funcionario" required="true" 
                                  requiredMessage="Campo Funcionário é obrigatrório"
                                  value="#{conviteBean.convite.idAdministrador}"
                                  style="font-family: 'Verdana'; font-size: 12px">

                    <f:selectItem  itemValue="0" 
                                   itemLabel="Selecione..."   /> 

                    <f:selectItems value="#{funcionarioBean.listaFuncionario}"
                                   var="v"  
                                   itemValue="#{v.idFuncionario}" 
                                   itemLabel="#{v.nome} #{v.sobreNome}" /> 

                </p:selectOneMenu>
                <br /><br />
                <h:outputText value="Atividade:" style="font-family: 'Verdana'; font-size: 12px" />
                <p:selectOneMenu id="atividade1" required="true" 
                                 requiredMessage="Campo Atividade é obrigatrório"
                                 value="#{conviteBean.convite.idAtividade}" 
                                 style="font-family: 'Verdana'; font-size: 12px">

                <f:selectItem  itemValue="0" 
                               itemLabel="Selecione..."/> 

                <f:selectItems value="#{atividadeBean.listaAtividade}"
                                   var="v"  
                                   itemValue="#{v.idAtividade}" 
                                   itemLabel="#{v.titulo}"/> 

                </p:selectOneMenu>
                <br /><br />
                <h:outputText value="Enviar dia:" style="font-family: 'Verdana'; font-size: 12px"  />
                <p:calendar id="dt" 
                            value="#{conviteBean.convite.data}" 
                            style="font-family: 'Verdana'; font-size: 12px"/>
                <br /><br />
                <h:outputText value="Obsevaçao:" style="font-family: 'Verdana'; font-size: 12px" />
                <p:inputTextarea rows="5" cols="27" 
                                 autoResize="false" 
                                 value="#{conviteBean.convite.texto}" 
                                 style="font-family: 'Verdana'; font-size: 12px"/>

            </h:panelGrid>
            <br />
            <p:commandButton id="btnO" style="font-family: 'Verdana'; font-size: 14px"
                value="Convidar" 
                type="submit" actionListener="#{conviteBean.salvar(e)}" 
                ajax="false"
                update="formPrincipal,id"/>   
        </h:form>
    </p:fieldset>

    <br />        
    <p:separator id="separator" />
    <br />
    
    <!-- LISTA OS CONVITES CADASTRADOS -->
    <p:fieldset id="Convite" toggleable="true" legend="Lista de Convites" style="font-family: 'Arial';">
        <br />
        <h:form id="form">   
            <p:growl id="messages" showDetail="true"/>
            
            <p:dataTable id="listConvite" 
                         emptyMessage="Nenhum registro encontrado" var="f" 
                         value="#{conviteBean.listaConvite}"  
                         paginator="true" rows="3"  
                         paginatorPosition="bottom"
                         paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                         rowsPerPageTemplate="3,10,50,100" 
                         rendered="true">   
                
                <p:column headerText="Atividade" style="font-family: 'Verdana'; font-size: 12px" filterBy="#{f.idAtividade}">   
                    <h:outputText value="#{f.idAtividade}" />  
                </p:column>
                
                <p:column  headerText="Convidade" style="font-family: 'Verdana'; font-size: 12px" filterBy="#{f.idAdministrador}">  
                    <h:outputText value="#{f.idAdministrador}" />  
                </p:column>
                
                <p:column  headerText="Data do Convite" style="font-family: 'Verdana'; font-size: 12px">  
                    <h:outputText value="#{f.data}">
                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                    </h:outputText>
                </p:column>
                
                <p:column  headerText="Observação" style="font-family: 'Verdana'; font-size: 12px">  
                    <h:outputText value="#{f.texto}" />
                </p:column>
                
                <!-- Botão Editar -->
                <p:column> 
                    <p:commandButton id="btEditar" 
                                     icon="ui-icon-pencil" 
                                     title="Editar"
                                     style="font-family: 'Verdana'; font-size: 13px"
                                     oncomplete="editarConvite.show() ">  
                            <f:setPropertyActionListener value="#{f}" target="#{conviteBean.conviteSelecionado}" />  
                    </p:commandButton>  
                </p:column>
                
                <!-- Botão Remover -->
                <p:column> 
                    <p:commandButton id="btRemover" icon="ui-icon-trash" 
                                     title="Remover"  
                                     style="font-family: 'Verdana'; font-size: 13px"
                                     oncomplete="confirmaExclusao.show() ">
                        <f:setPropertyActionListener value="#{f}" target="#{conviteBean.conviteSelecionado}" />  
                    </p:commandButton>
                </p:column>
                
                <!-- Botão visualizar -->
                 <p:column style="width:4%">  
                     <p:commandButton id="selectButton" 
                                      oncomplete="carDialog.show()" 
                                      icon="ui-icon-search" 
                                      title="View"
                                      style="font-family: 'Verdana'; font-size: 13px"
                                      update="listConvite">  
                        <f:setPropertyActionListener value="#{f}" target="#{conviteBean.conviteSelecionado}" />  
                    </p:commandButton>  
                </p:column>
            
            </p:dataTable> 
            
            <!-- DIALOG PARA EXIBIR DADOS -->
            <p:dialog header="Detalhe do Convite" widgetVar="carDialog" resizable="false" id="carDlg"  
                showEffect="fade" hideEffect="explode" modal="true">  

                <h:panelGrid id="display" columns="2" cellpadding="4" style="margin:0 auto;"> 

                    <h:outputText value="Atividade: " style="font-family: 'Verdana'; font-size: 12px" />  
                    <h:outputText value="#{conviteBean.conviteSelecionado.idAtividade}" /> 

                    <h:outputText value="Convidado: " style="font-family: 'Verdana'; font-size: 12px" />  
                    <h:outputText value="#{conviteBean.conviteSelecionado.idAdministrador}" />

                    <h:outputText value="Data: " style="font-family: 'Verdana'; font-size: 12px" />  
                    <h:outputText value="#{conviteBean.conviteSelecionado.data}" >
                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                    </h:outputText>

                     <h:outputText value="Observação: " style="font-family: 'Verdana'; font-size: 12px" />  
                     <h:outputText value="#{conviteBean.conviteSelecionado.texto}"/> 

                </h:panelGrid>  

            </p:dialog>
                
        </h:form>
        
        <!-- DIALOG PARA EDITAÇÃO DE DADOS -->
        <p:dialog id="dialogEdit" header="Editar Convite" widgetVar="editarConvite"  resizable="false" modal="true" showEffect="slide" width="500">
            <h:form id="formEdit" prependId="false"> 
                <p:growl id="idEdit" showDetail="true" life="4000" />
                <br />
                <h:panelGrid columns="3" cellpadding="80">

                    <h:outputText value="Funcionario: " style="font-family: 'Verdana'; font-size: 12px" />
                    <p:selectOneMenu id="funcionarioEdit" required="true" 
                                      requiredMessage="Campo Funcionário é obrigatrório"
                                      value="#{conviteBean.convite.idAdministrador}"
                                      style="font-family: 'Verdana'; font-size: 12px">

                        <f:selectItem  itemValue="0" 
                                   itemLabel="Selecione..."/>
                        
                        <f:selectItems value="#{funcionarioBean.listaFuncionario}"
                                       var="fu"  
                                       itemValue="#{fu.idFuncionario}" 
                                       itemLabel="#{fu.nome} #{fu.sobreNome}" /> 

                    </p:selectOneMenu>
                    <br /><br />
                    <h:outputText value="Atividade:" style="font-family: 'Verdana'; font-size: 12px" />
                    <p:selectOneMenu id="atividadeEdit" required="true" 
                                     requiredMessage="Campo Atividade é obrigatrório"
                                     value="#{conviteBean.convite.idAtividade}"
                                     style="font-family: 'Verdana'; font-size: 12px">

                        <f:selectItem  itemValue="0" 
                                   itemLabel="Selecione..."/>
                        
                    <f:selectItems value="#{atividadeBean.listaAtividade}"
                                       var="at"  
                                       itemValue="#{at.idAtividade}" 
                                       itemLabel="#{at.titulo}"/> 

                    </p:selectOneMenu>
                    <br /><br />
                    <h:outputText value="Enviar dia:" style="font-family: 'Verdana'; font-size: 12px"  />
                    <p:calendar id="dtEdit" value="#{conviteBean.conviteSelecionado.data}" 
                                style="font-family: 'Verdana'; font-size: 12px"/>
                    <br /><br />
                    <h:outputText value="Obsevaçao:" style="font-family: 'Verdana'; font-size: 12px" />
                    <p:inputTextarea rows="5" cols="27" 
                                     autoResize="false" 
                                     style="font-family: 'Verdana'; font-size: 12px"
                                     value="#{conviteBean.conviteSelecionado.texto}"/>
                </h:panelGrid>
                <br />
                <br />
                <p:commandButton id="btnEdit" style="font-family: 'Verdana'; font-size: 14px"
                    value="Editar" 
                    type="submit" actionListener="#{conviteBean.editar(e)}" 
                    update="formEdit,idEdit"
                    ajax="false" />    
            </h:form>
        </p:dialog>
        
        <!-- DIALOG PARA EXCLUSÃO DE CONVITES -->
        <h:form id="formExcluirPartido"> 
            <p:growl id="teste" showDetail="true" life="4000" ></p:growl>
            <p:confirmDialog id="confirmaExclusao" appendToBody="true"  
                message="Deseja realmente excluir o convite selecionado?"  
                header="Excluir Convite" severity="alert"  
                widgetVar="confirmaExclusao">  

                <p:commandButton id="confirm" value="Sim, desejo"  
                                 actionListener="#{conviteBean.excluir(e)}"  
                                 oncomplete="confirmaExclusao.hide();"  
                                 update="teste" />  

                <p:commandButton id="decline" value="Não, me enganei"  
                                 onclick="confirmaExclusao.hide()" type="button" oncomplete="#{conviteBean.listaConvite}"/>  
            </p:confirmDialog>  
        </h:form>
        
    </p:fieldset>
</p:tab>

</p:tabView>[/code]

Vc precisa mandar renderizar seu form apos executar a action. No commandButton do primefaces isto pode ser feito com o atributo update. Vc informa os id´s dos componentes que deseja renderizar novamente.

Espero ter ajudado.

[quote=trodriguesbhPJ]Vc precisa mandar renderizar seu form apos executar a action. No commandButton do primefaces isto pode ser feito com o atributo update. Vc informa os id´s dos componentes que deseja renderizar novamente.

Espero ter ajudado.[/quote]

Coloquei o Update no button porém ocorre esse erro

Cannot find component with identifier "formAdmin" in view.

O codigo agora esta assim

 &lt;p:fieldset id="Convite" toggleable="true" legend="Lista de Administradores" style="font-family: 'Arial';"&gt;
            <br />
            &lt;h:form id="formAdmin"&gt;   
                &lt;p:growl id="messages" showDetail="true"/&gt;
                
                &lt;p:dataTable id="listConvite" 
                             emptyMessage="Nenhum registro encontrado" var="f" 
                             value="#{funcionarioBean.listaAdministrador}"  
                             paginator="true" rows="3"  
                             paginatorPosition="bottom"
                             paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                             rowsPerPageTemplate="3,10,50,100" 
                             rendered="true"&gt;   
                    
                    &lt;p:column headerText="Nome" style="font-family: 'Verdana'; font-size: 12px" filterBy="#{f.nome} #{f.sobreNome}"&gt;   
                        &lt;h:outputText value="#{f.nome} #{f.sobreNome}" /&gt;  
                    &lt;/p:column&gt;
          
                    &lt;p:column  headerText="Cadastrado em" style="font-family: 'Verdana'; font-size: 12px"&gt;  
                        &lt;h:outputText value="#{f.historico.dtEntrada}"&gt;
                            &lt;f:convertDateTime pattern="dd/MM/yyyy"/&gt;
                        &lt;/h:outputText&gt;
                    &lt;/p:column&gt;
                    
                    &lt;p:column  headerText="Status" style="font-family: 'Verdana'; font-size: 12px"&gt;  
                        &lt;h:outputText value="#{f.historico.status}"/&gt;
                    &lt;/p:column&gt;
                    
                    &lt;!-- Botão Editar --&gt;
                    &lt;p:column&gt; 
                        &lt;p:commandButton id="btEditar" 
                                         icon="ui-icon-pencil" 
                                         title="Editar"
                                         style="font-family: 'Verdana'; font-size: 13px"
                                         oncomplete="editarConvite.show() "
                                         update="formAdmin"&gt;  
                            &lt;f:setPropertyActionListener value="#{f}" target="#{funcionarioBean.funcionarioSelecionado}" /&gt;  
                        &lt;/p:commandButton&gt;  
                    &lt;/p:column&gt;
                
                &lt;/p:dataTable&gt; 
           
            &lt;/h:form&gt;

              . 
              .
              .

      &lt;/p:fieldset&gt;

Lembrando que abaixo deste dataTable eu tenho outros dois forms com dialog…
Porque o erro?

Seu form esta dentro de um p:fieldset. Tente colocar assim no update do commandButton

update="@form"

Desculpe pela demora pessoal…
Tentei com a solução citada acima e não funcionou.
:cry:

Tente

update=":formAdmin"

Qual o escopo do seu ManagerBean ? Se tiver como RequestScoped tente trocar para ViewScoped.

O meu Bean estava com sessionScope, troquei para o view e depois disso nenhum dos meus dialog de editação ou exibição dos dados funcionou