我有一个主数据结果集,我在数据表中提供。
获取细节并在其中呈现,以组合成一个保留在一列中的单个输出字符串。
<p:column>
<f:facet name="header">BF Order Contents</f:facet>
<ui:repeat value="#{order.listOfOrderDetails}" var="orderitem" varStatus="orderitemstatus" >
<h:outputText value="#{orderitem.product.brand.name}-#{orderitem.product.name}#{orderitemstatus.last ? '':', '}" />
</ui:repeat>
</p:column>
在数据表上,该列显示为“某些品牌 - 某些产品,其他品牌 - 其他产品”
但是当我导出到EXCEL时,我看到了:
com.sun.faces.facelets.component.UIRepeat@783622ba
在该栏目中。
有没有人知道如何克服这个问题(仅限xhtml)。我不想改变支持bean来生成细节字符串。
BTW:我参加了PF3.2,Mojarra 2.1.8,EL 2.2.1-b04,JDK1.7,Tomcat7由于
答案 0 :(得分:4)
可以通过以下方式解决。
答案 1 :(得分:0)
我真的不认为这是可能的,即使覆盖了主要来源中的exporter class
,它也会变得复杂......
你可能更好alter the backing bean
此外,您可以在与我Feature request: Datatables custom filter function - filterFunction (like sortFunction for sort)
打开的问题相关的位置添加星标答案 2 :(得分:0)
您可以编写一个facelet函数,在Java中进行迭代并返回一个字符串..这样可以将它放到outputText中,或者做2个列,一个放置可导出的false,另一个放置CSS显示:none