如何解决jett生成的xls文件中的InvalidFormatException?

时间:2017-09-04 01:52:28

标签: excel apache-poi report xls jett

我有一个bean用方法生成用jett制作的报告:

Map<String, Object> beans = new HashMap<String, Object>();

    beans.put("fichasTecnicasMateriaPrimaResumo", fichasTecnicasMateriaPrimaResumo);

    try {

        InputStream inPath = ProdutoManagedBean.class.getResourceAsStream("/template.xls");

        ExcelTransformer transformer = new ExcelTransformer();
        transformer.transform(inPath, beans);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (InvalidFormatException e) {
        e.printStackTrace();
    }

我在transformer.transfom(...)中遇到InvalidFormatException:

22:44:37,803 ERROR [stderr] (default task-28) org.apache.poi.openxml4j.exceptions.InvalidFormatException: Your InputStream was neither an OLE2 stream, nor an OOXML stream

我看到它可能与xls文件与libreoffice的兼容性有关。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我发现xls实际上被maven损坏了...当我尝试打开wildfly部署文件夹中的文件时,它已经被破坏了...我已经尝试了一些解决方案来解决这个数据损坏的问题但我还没有发现任何有用的东西,但至少我已经知道真正的错误是什么。谢谢。