Fala galera, blz?
Bom, estou fazendo uma melhoria em uma sistema, que precisa de um botão que exporte os dados da tabela para excel.
Eu coloquei o botão, seguindo o exemplo do primefaces e tal, a principio funcionou, porém, quando abre o excel gerado, ele contem apenas os headers das colunas, sem nenhuma linha.
Não ocorre nenhum erro no log.
Estou usando primefaces 5.3 e já testei com duas versões do poi (3.8, 3.10-Final) e mesmo assim não exportou os dados corretamente.
Segue o código xhtml:
<h:form id="frm">
<h1 class="aw-page-title">Extrator CTE</h1>
<p:messages autoUpdate="false" />
<div class="ui-fluid">
<p:panelGrid columns="2" styleClass="panelgrid-noborder" layout="grid"
columnClasses="ui-grid-col-2, ui-grid-col-4, ui-grid-col-1, ui-grid-col-1, ui-grid-col-2, ui-grid-col-2">
<p:outputLabel for="cnjpEmissor" value="CNPJ Emissor CT-e: "/>
<p:inputMask id="cnjpEmissor" mask="99.999.999/9999-99" value="#{extratorBean.filtroPesquisa.cnpjEmissor}"/>
<p:outputLabel for="cnpjTomador" value="CNPJ Tomador Ct-e: "/>
<p:inputMask id="cnpjTomador" mask="99.999.999/9999-99" value="#{extratorBean.filtroPesquisa.cnpjTomador}"/>
<p:outputLabel for="inscricaoEstadual" value="Inscrição Estadual: "/>
<p:inputMask id="inscricaoEstadual" mask="99.999.999-9" value="#{extratorBean.filtroPesquisa.inscricaoEstadual}"/>
<p:outputLabel for="tipoConsulta" value="Tipo de Consulta: "/>
<p:selectOneRadio id="tipoConsulta" value="#{extratorBean.filtroPesquisa.tipoConsulta}">
<f:selectItem itemLabel="Data de Recebimento" itemValue="IDE_TIMESTAMP" />
<f:selectItem itemLabel="Data de Emissão" itemValue="IDE_DHEMI" />
</p:selectOneRadio>
<p:outputLabel for="de" value="De: "/>
<p:calendar id="de" pattern="dd/MM/yyyy" value="#{extratorBean.filtroPesquisa.dtInicioPesquisa}"/>
<p:outputLabel for="ate" value="Até: "/>
<p:calendar id="ate" pattern="dd/MM/yyyy" value="#{extratorBean.filtroPesquisa.dtFimPesquisa}"/>
<p:outputLabel for="statusCTE" value="Status CT-e: "/>
<p:selectOneRadio id="statusCTE" value="#{extratorBean.filtroPesquisa.statusCte}">
<f:selectItem itemLabel="Autorizado" itemValue="autorizado" />
<f:selectItem itemLabel="Cancelado" itemValue="cancelado" />
</p:selectOneRadio>
<p:commandButton value="Pesquisar" action="#{extratorBean.extrair}" update="cteTable, @form" process="@form" immediate="false"/>
</p:panelGrid>
</div>
<p:dataTable id="cteTable" var="cte"
emptyMessage="Nenhum Registro Localizado"
reflow="true" value="#{extratorBean.ctes}" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {Exporters}"
style="margin-top: 10px" paginator="true" rows="100" scrollable="true" scrollWidth="1024px">
<f:facet name="{Exporters}">
<h:commandLink>
<p:graphicImage name="images/excel.png" width="24" library="samsung" />
<p:dataExporter type="xls" target="cteTable" fileName="cte-s" />
</h:commandLink>
</f:facet>
<p:column headerText="CNPJ Emissor" width="150" style="text-align: center">
<h:outputText value="#{cte.EMIT_CNPJ}"/>
</p:column>
<p:column headerText="Serie" width="60" style="text-align: center">
<h:outputText value="#{cte.IDE_SERIE}"/>
</p:column>
<p:column headerText="N° CT-e" width="90" style="text-align: center">
<h:outputText value="#{cte.IDE_NCT}"/>
</p:column>
<p:column headerText="Dt. Emissão" width="150" style="text-align: center">
<h:outputText value="#{cte.IDE_DHEMI}">
<f:convertDateTime pattern="dd/MM/yyyy" />
</h:outputText>
</p:column>
<p:column headerText="Total Frete" width="80" style="text-align: center">
<h:outputText value="#{cte.VPREST_VTPREST}">
<f:convertNumber type="currency" />
</h:outputText>
</p:column>
<p:column headerText="ICMS" width="80" style="text-align: center">
<h:outputText value="#{cte.ICMS_VICMS}">
<f:convertNumber type="currency" />
</h:outputText>
</p:column>
<p:column headerText="% ICMS" width="80" style="text-align: center">
<h:outputText value="#{cte.ICMS_PICMS}">
<f:convertNumber minFractionDigits="2" />
</h:outputText>
</p:column>
<p:column headerText="Nat. Op." width="350" style="text-align: center">
<h:outputText value="#{cte.IDE_NATOP}"/>
</p:column>
<p:column headerText="CNPJ Tomador" width="150" style="text-align: center">
<h:outputText value="#{cte.TOMADOR}"/>
</p:column>
<p:column headerText="Chave Acesso" width="350" style="text-align: center">
<h:outputText value="#{cte.TRANSACTIONID}"/>
</p:column>
<p:column headerText="Dt. Criação" width="120" style="text-align: center">
<h:outputText value="#{cte.IDE_TIMESTAMP}">
<f:convertDateTime pattern="dd/MM/yyyy" />
</h:outputText>
</p:column>
<p:column headerText="N° Protocolo" width="120" style="text-align: center">
<h:outputText value="#{cte.IDE_AUTHCODESEFAZ}"/>
</p:column>
</p:dataTable>
</h:form>
Por favor ignorem os erros de nomenclatura de atributos.
Desde já agradeço a ajuda!