如何以Excel / CSV格式导出OpenFaces数据表?
|
不幸的是,OpenFaces Datatable还没有像Primefaces或IceFaces那样具有导出功能。
虽然导出是小菜一碟,但是过滤IceFaces或primefaces数据表确实有些恐怖,但是primeFaces的过滤不适用于JSF DataModel(很遗憾,但确实如此)。
使用OpenFaces DataTable进行过滤非常容易,而且功能强大。
但是最终用户想要将经过过滤的数据表导出为CSV或MS Excel等格式。
OpenFaces的伟大Dmitry给了我一个提示:
使用OpenFaces DataTable方法:“ 0”将从数据表中获取当前显示的行,然后使用诸如Itext之类的通用库以PDF格式导出。
在我看来,这应该是这样的:
为此创建一个备用bean。
将Apache POI第三个库添加到类路径
使用Apache POI编写代码以使用方法
getDisplayedRowsDatas()
导出OpenFaces数据表的内容-但恐怕此方法不会返回列标题的名称-或将由OpenFaces数据表呈现的HTML表作为缓冲字符串捕获,并且使用Apache POI生成与Buffer流式传输的Excel文件。
在我最近遇到的MyFaces示例中:MyFaces Datatable Export Example,开发人员使用Myfaces组件<t:buffer value=#{myExportBean.myBufferString}> datatable here </t:buffer />
将数据表的内容转换为缓冲的String,这使事情变得更加容易。不幸的是,JSF Core没有这样的组件。
有人遇到过这个吗?帮助或更好的替代品受到极大的赞赏。
没有找到相关结果
已邀请:
1 个回复
孤捷侩
它导出表当前显示的所有行和列的数据(当前仅导出分页表的当前页面)。