首页 > 解决方案 > 导出超过 256 列和 primefaces 的 excel

问题描述

我正在使用一个primefaces名为dataExporter将数据导出到 xls 文件的组件。我的问题是导出的 excel 中的列不能超过 256 列,因为我收到此错误:

java.lang.IllegalArgumentException: Invalid column index (256).  Allowable column range for BIFF8 is (0..255) or ('A'..'IV')

我调查了一下,发现了这一点- 所以我的错误似乎来自 dataExporter 可能使用org.apache.poi.hssf.usermodel而不是更新的事实org.apache.poi.xssf.usermodel。我可以告诉这个primefaces组件使用不同的实现吗?或者也许我可以使用不同的primefaces组件?任何想法?

标签: javaexceljsfprimefacesapache-poi

解决方案


我的问题的解决方案确实正如@BackSlash 和@Melloware 在他们的评论中所建议的那样

  1. 将我的版本升级primefaces到 6.0
  2. 使用xlsxstream导出器的类型

    <p:dataExporter type="xlsxstream" target="my-table" fileName="my-file" />

稍后编辑:该xlsx类型也可能是一个不错的选择,请参阅此问题以比较xlsxxlsxstream


推荐阅读