0

我使用来自 xdocexample 的代码

 InputStream in  = Thread.currentThread().getContextClassLoader().getResourceAsStream(pathToTemplate);
 IXDocReport report = DocReportRegistry.getRegistry().loadReport(in,TemplateEngineKind.Velocity);

并有错误:

2014-08-12 20:13:40,050 ERROR [STDERR] java.util.zip.ZipException: incomplete dynamic bit lengths tree
2014-08-12 20:13:40,085 ERROR [STDERR]  at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:147)
2014-08-12 20:13:40,096 ERROR [STDERR]  at java.util.zip.ZipInputStream.read(ZipInputStream.java:154)
2014-08-12 20:13:40,097 ERROR [STDERR]  at java.io.FilterInputStream.read(FilterInputStream.java:90)
2014-08-12 20:13:40,097 ERROR [STDERR]  at fr.opensagres.xdocreport.core.io.IOUtils.copyLarge(IOUtils.java:1135)
2014-08-12 20:13:40,097 ERROR [STDERR]  at fr.opensagres.xdocreport.core.io.IOUtils.copy(IOUtils.java:1109)
2014-08-12 20:13:40,098 ERROR [STDERR]  at fr.opensagres.xdocreport.core.io.XDocArchive.setEntry(XDocArchive.java:349)
2014-08-12 20:13:40,098 ERROR [STDERR]  at fr.opensagres.xdocreport.core.io.XDocArchive.readZip(XDocArchive.java:311)
2014-08-12 20:13:40,098 ERROR [STDERR]  at fr.opensagres.xdocreport.document.registry.XDocReportRegistry.createReport(XDocReportRegistry.java:359)
2014-08-12 20:13:40,099 ERROR [STDERR]  at fr.opensagres.xdocreport.document.registry.XDocReportRegistry.loadReport(XDocReportRegistry.java:326)
2014-08-12 20:13:40,099 ERROR [STDERR]  at fr.opensagres.xdocreport.document.registry.XDocReportRegistry.loadReport(XDocReportRegistry.java:317)
2014-08-12 20:13:40,100 ERROR [STDERR]  at fr.opensagres.xdocreport.document.registry.XDocReportRegistry.loadReport(XDocReportRegistry.java:302)
2014-08-12 20:13:40,100 ERROR [STDERR]  at com.work.report.xdocreport.XDocReport.<init>(XDocReport.java:36)
2014-08-12 20:13:40,100 ERROR [STDERR]  at com.work.report.builders.XdocReportBuilder.build(XdocReportBuilder.java:49)

可能是什么问题呢?

4

1 回答 1

0

很难为您提供帮助,因为我们不知道您正在加载哪种文档。XDocReport API 可以加载任何经过 XML 压缩的文档(docx、odt 等),但您需要很好的实现。

如今,XDocReport 可以加载 docx、pptx 和 odt。

因此,我假设您正在加载一个错误的文档(可能是一个 .doc,它是二进制文件,而不是包含 xml 条目的 zip)。

于 2014-08-13T08:24:21.627 回答