What can be wrong with this? (datatable)

UI Components for JSF
Post Reply
allan_hkrs
Posts: 12
Joined: 13 Sep 2014, 04:23

24 Sep 2014, 12:43

Hi.. i have 2 xhtml files for CRUD operations.. One is refreshing the datatable ok via ajax after any operation.. the other don't.... but... the both are almost the same!!

Please help me if anyone have idea about the problema

This xhtml have problems (dont update datatable via ajax

Code: Select all

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui">
                
    <h:form id="AlertaListForm">
        <p:panel header="Display de Alertas de Entregas">
            <p:contextMenu id="AlertaDataTableContextMenu" for="datalist">  
                <p:menuitem value="Excluir" onclick="document.getElementById('AlertaListForm:deleteButton').click();" icon="ui-icon-trash"/>
            </p:contextMenu>
            <p:dataTable id="datalist"
                         value="#{alertaMB.listaItens}"
                         var="item"
                         rowKey="#{item.entregaID}"
                         paginator="true"
                         rows="5"
                         rowsPerPageTemplate="5,10,20"
                         selectionMode="single"
                         selection="#{alertaMB.selecionado}">

                <p:ajax event="rowSelect"   update=":AlertaListForm:deleteButton :AlertaListForm:AlertaDataTableContextMenu" listener="#{alertaMB.resetParents}"/>
                <p:ajax event="rowUnselect" update=":AlertaListForm:deleteButton :AlertaListForm:AlertaDataTableContextMenu" listener="#{alertaMB.resetParents}"/>
                <p:ajax event="rowDblselect" onsuccess="document.getElementById('AlertaListForm:deleteButton').click();"/>

                <p:column sortBy="#{item.entregaID}" filterBy="#{item.entregaID}">
                    <f:facet name="header">
                        <h:outputText value="ID"/>
                    </f:facet>
                    <h:outputText value="#{item.entregaID}"/>
                </p:column>


                <p:column sortBy="#{item.endereco}" filterBy="#{item.endereco}">
                    <f:facet name="header">
                        <h:outputText value="Endereço"/>
                    </f:facet>
                    <h:outputText value="#{item.endereco}"/>
                </p:column>
                
                <p:column sortBy="#{item.entregador}" filterBy="#{item.entregador}">
                    <f:facet name="header">
                        <h:outputText value="Entregador"/>
                    </f:facet>
                    <h:outputText value="#{item.entregador}"/>
                </p:column>  
                
                <p:column sortBy="#{item.statusDesc}" filterBy="#{item.statusDesc}">
                    <f:facet name="header">
                        <h:outputText value="Status"/>
                    </f:facet>
                    <h:outputText value="#{item.statusDesc}"/>
                </p:column>
                
                <p:column sortBy="#{item.checkin}" filterBy="#{item.checkin}">
                    <f:facet name="header">
                        <h:outputText value="Check-in"/>
                    </f:facet>
                    <h:outputText value="#{item.checkin}"/>
                </p:column>        
                
                <p:column sortBy="#{item.checkout}" filterBy="#{item.checkout}">
                    <f:facet name="header">
                        <h:outputText value="Check-out"/>
                    </f:facet>
                    <h:outputText value="#{item.checkout}"/>
                </p:column> 
            </p:dataTable>

            <p:commandButton id="deleteButton" icon="ui-icon-trash" value="Excluir" actionListener="#{alertaMB.removeAlerta}" update=":growl,datalist" disabled="#{empty alertaMB.selecionado}">
                <p:confirm header="Confirmar Desativação" message="A desativação deste alerta permanecerá por uma hora. Tem certeza?" icon="ui-icon-alert"/>
            </p:commandButton>

        </p:panel>
        <ui:include src="/layout/confirmacao.xhtml"/>
    </h:form>
</ui:composition>
The xhtml below is working fine:

Code: Select all

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui">

    <h:form id="CategoriaListForm">
        <p:panel header="Categorias Cadastradas">
            <p:contextMenu id="CategoriaDataTableContextMenu" for="datalist">  
                <p:menuitem value="Cadastrar" onclick="document.getElementById('CategoriaListForm:createButton').click();" icon="ui-icon-plus"/>
                <p:menuitem value="Visualizar" onclick="document.getElementById('CategoriaListForm:viewButton').click();" icon="ui-icon-search"/>
                <p:menuitem value="Editar" onclick="document.getElementById('CategoriaListForm:editButton').click();" icon="ui-icon-pencil"/>
                <p:menuitem value="Excluir" onclick="document.getElementById('CategoriaListForm:deleteButton').click();" icon="ui-icon-trash"/>
            </p:contextMenu>
            <p:dataTable id="datalist"
                         value="#{categoriaMB.listaItens}"
                         var="item"
                         rowKey="#{item.categoriaID}"
                         paginator="true"
                         rows="5"
                         rowsPerPageTemplate="5,10,20"
                         selectionMode="single"
                         selection="#{categoriaMB.selecionado}">

                <p:ajax event="rowSelect"   update=":CategoriaListForm:createButton :CategoriaListForm:viewButton :CategoriaListForm:editButton :CategoriaListForm:deleteButton :CategoriaListForm:CategoriaDataTableContextMenu" listener="#{categoriaMB.resetParents}"/>
                <p:ajax event="rowUnselect" update=":CategoriaListForm:createButton :CategoriaListForm:viewButton :CategoriaListForm:editButton :CategoriaListForm:deleteButton :CategoriaListForm:CategoriaDataTableContextMenu" listener="#{categoriaMB.resetParents}"/>
                <p:ajax event="rowDblselect" onsuccess="document.getElementById('CategoriaListForm:viewButton').click();"/>

                <p:column sortBy="#{item.categoriaID}" filterBy="#{item.categoriaID}" width="20%">
                    <f:facet name="header">
                        <h:outputText value="ID"/>
                    </f:facet>
                    <h:outputText value="#{item.categoriaID}"/>
                </p:column>


                <p:column sortBy="#{item.nome}" filterBy="#{item.nome}" width="80%">
                    <f:facet name="header">
                        <h:outputText value="Categoria"/>
                    </f:facet>
                    <h:outputText value="#{item.nome}"/>
                </p:column>


            </p:dataTable>

            <p:commandButton id="createButton"                             icon="ui-icon-plus"   value="Cadastrar" actionListener="#{categoriaMB.preparaInsercao}" update=":CategoriaCreateForm" oncomplete="CategoriaCreateDialog.show()"/>
            <p:commandButton id="viewButton"   style="visibility: hidden;" icon="ui-icon-search" value="Visualizar" update=":CategoriaViewForm" oncomplete="CategoriaViewDialog.show()" disabled="#{empty categoriaMB.selecionado}"/>
            <p:commandButton id="editButton"   style="visibility: hidden;" icon="ui-icon-pencil" value="Editar" update=":CategoriaEditForm" oncomplete="CategoriaEditDialog.show()" disabled="#{empty categoriaMB.selecionado}"/>
            <p:commandButton id="deleteButton" icon="ui-icon-trash"  value="Excluir" actionListener="#{categoriaMB.exclui}" update=":growl,datalist" disabled="#{empty categoriaMB.selecionado}">
                <p:confirm header="Confirmar Exclusão" message="Tem certeza que deseja excluir a Categoria selecionada?" icon="ui-icon-alert"/>
            </p:commandButton>

        </p:panel>
        <ui:include src="/layout/confirmacao.xhtml"/>
    </h:form>

</ui:composition>
Idk what to do.. please help me

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 61 guests