[RESOLVIDO] - Exibir o resultado da busca num DataTable

3 respostas
jean.ufam

Bom dia a todos,
gostaria muito de saber como eu faço pra exibir o resultado de uma busca em um datatable

segue o codigo:

<h:form id="formBusca">
                        <p:panel header="Busca" style="width: 400px;">
                            <h:panelGrid columns="2">
                                <h:outputLabel value="Código da Manifestação:" />
                                <p:inputText label="id" value="#{manifestacaoBean.id}" maxlength="14" size="40"  />

                                <h:outputLabel value="Nome do manifestante:" />
                                <p:inputText label="nome" value="#{manifestacaoBean.nome}" maxlength="14" size="40"  />                    

                                <h:outputLabel value="Número do Processo" />
                                <p:inputText label="processo" value="#{manifestacaoBean.processo}" maxlength="14" size="40"  />

                            </h:panelGrid>
                            <br></br>
                            <p:commandButton value="Buscar" actionListener="#{manifestacaoBean.pesqBasica}" update="formResult" />
                        </p:panel>
                    </h:form>

Form do DataTable :

<h:form id="formResult">
                        <p:dataTable var="c" paginator="true" rows="5" paginatorPosition="top" rowsPerPageTemplate="10,15,20"
                                     paginatorTemplate=" {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" 
                                     update="formRemover" onselectComplete="remover.show()"
                                     style="width: 750px;"
                                     rendered="#{not empty manifestacaoBean.manifests}"
                                     emptyMessage="Não há registros pesquisados!!!!">

                            <p:column headerText="CODIGO"> <h:outputText value="#{c.id}"/> </p:column>
                            <p:column headerText="NOME"> <h:outputText value="#{c.nome}" /> </p:column>          
                            <p:column headerText="PROCESSO"> <h:outputText value="#{c.processo}" /> </p:column>
                            <p:column headerText="DATA" style="width: 80px;"> <h:outputText value="#{c.dataManifestacao}"> 
                                    <f:convertDateTime pattern="dd/MM/yyyy" /> </h:outputText>
                            </p:column>

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

Alguem poderia me ajudar, sei que é coisa bem simples e naum estou conseguindo visualizar o erro !!!

att,

3 Respostas

A

essa é facil! kkkkk
Vamos lá, coloque o seu datatable dentro do mesmo form do seu id formBusca e dê o update no te formBusca. Isso já deve bastar. para ficar mais estiloso você pode fazer fazer assim:

Crie um tipo de lista no seu backbean e carregue-a pela procura:

List<OSeuBeanASerPesquisado> listaPesquisa;
.
.
.
.
/* get e set*/




//método da sua procura
public void pesqBasica(){
/*
*
*Implemente o seu código aqui
*
*/
listaPesquisa = resultado da lista da sua pesquisa;
}

pronto, aqui no teu actionListener tu carregou a tua lista de pesquisa. Agora para poder renderizar o resultado SOMENTE quando tiver algum registro você faz assim:

<p:panel header="Erro" rendered="#{manifestacaoBean.listaPesquisa.size() == 0}">
      Nenhum resultado encontrado com os parâmetros informados!
</p:panel>
<p:dataTable var="c" value="#{manifestacaoBean.listaPesquisa}" rendered="#{manifestacaoBean.listaPesquisa.size() > 0}">
.
.
.
.
</p:datatable>

assim você tem algo mais estiloso kkkk
se tiver erros de escrita corrige aí que fiz tudo no dedao do cel

jean.ufam

Meu brother, saquei a parada e ja funcionou … Obrigado msmo !!!
valeu pela diga !!!

estou encerrando topico.

A

Cara aproveitando o topico, estou precisando implementar uma DataTable no seguinte modo, cada pessoa (linha) terá informações (colunas) atualizadas por hora, essas informações teriam que ser mostradas hora por hora, alguem já fez algo parecido? Será que no DataTable há algo parecido? Estou tentando fazer por meio de select no DAO, mas vai ficar com trem muito feio. Alguem com alguma sugestão?

Obrigado.

Criado 21 de julho de 2011
Ultima resposta 22 de jul. de 2011
Respostas 3
Participantes 3