私のdataTableには、別のページへのリンクがあります。残念ながら、Excel 形式でエクスポートすると空の行が生成されます。リンクがなければ、エクスポートは正常に機能します。
では、リンクを作成してテーブルをエクスポートするにはどうすればよいでしょうか?
<h:form id="componentForm">
<h:panelGrid columns="3" cellpadding="5" >
<p:outputLabel for="upper" value="Date max:"/>
<p:calendar id="upper" value="#{futuresExpireView.upper}" pattern="dd/MM/yyyy"/>
<h:commandButton id="submit" value="Charger" action="#{futuresExpireView.loadTable}" />
</h:panelGrid>
<p:dataTable value="#{futuresExpireView.infos}" var="item" id="infos" >
<p:column headerText="Libellé" >
<p:link outcome="security">
<h:outputText value="#{item.security.label}" />
<f:param name="securityId" value="#{item.security.securityId}" />
</p:link>
</p:column>
</p:dataTable>
<br/>
<p:commandButton id="export" value="Export XLXS" ajax="false">
<p:dataExporter type="xlsxstream" target="infos" fileName="futures" />
</p:commandButton>
</h:form>
リンクなしで正常に動作します:
<p:column headerText="Libellé" >
<h:outputText value="#{item.security.label}" />
</p:column>