1
resposta

<p:commandLink update="?">

Boa noite. Pessoal implementei o codigo abaixo no curso: https://cursos.alura.com.br/course/jsf-primefaces/task/15197 porem o update não esta renderizando a pagina de forma alguma. Ja tentei de varias forma e não funciona. Alguém consegui ver onde estou errando?

<h:form id="formTableLivros">
    <p:dataTable value="#{livroBean.listar()}" var="livro" id="tableLivros">

        outras colunas

        <p:column headerText="Alterar">
            <p:commandLink id="alterar" action="#{livroBean.alterar(livro)}" process="@this" update="formLivro" title="Alterar">
                <span class="pi pi-pencil icons"></span>
            </p:commandLink>
        </p:column>

        // update="formTableLivros" XXXX ESSE UPDATE NÃO ESTA RENDERIZANDO A PAGINA XXXX
        <p:column headerText="Apagar">
            <p:commandLink id="apagar" action="#{livroBean.apagar(livro)}" process="@this" update="formTableLivros" title="Apagar">
                <span class="pi pi-trash icons"></span>
            </p:commandLink>
        </p:column>

    </p:dataTable>
</h:form>
1 resposta

Olá, Calixto! Como vai?

Tenta colocar sua tabela dentro de um componente que suporta atualização parcial, como um <h:panelGroup> ou um <h:panelGrid>, exemplo:

<h:form id="formTableLivros">
    <h:panelGroup id="panelTableLivros">
        <p:dataTable value="#{livroBean.listar()}" var="livro" id="tableLivros">

            outras colunas

            <p:column headerText="Alterar">
                <p:commandLink id="alterar" action="#{livroBean.alterar(livro)}" process="@this" update="formLivro" title="Alterar">
                    <span class="pi pi-pencil icons"></span>
                </p:commandLink>
            </p:column>

            <p:column headerText="Apagar">
                <p:commandLink id="apagar" action="#{livroBean.apagar(livro)}" process="@this" update="panelTableLivros" title="Apagar">
                    <span class="pi pi-trash icons"></span>
                </p:commandLink>
            </p:column>

        </p:dataTable>
    </h:panelGroup>
</h:form>