【POI】POI导出常见问题
2025-11-13
JAVA
00

目录

问题一、文件格式异常
问题二、图片插入相关问题

基于POI封装的文档导出,网址:https://deepoove.com/

问题一、文件格式异常

No valid entries or contents found, this is not a valid OOXML (Office Open XML) file

该问题一般是因为word模板本身有问题或者打包问题,所以排查思路:

1、检查文档是否为doc、docx格式

2、在maven的pom打包文件中添加如下内容,避免编译后被损坏

展开代码
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.1.0</version> <configuration> <encoding>UTF-8</encoding> <nonFilteredFileExtensions> <!-- 需要过滤掉不需要编码的文件:过滤后缀为.xlsx或者.xls的所有文件,不对其进行统一编码--> <nonFilteredFileExtension>doc</nonFilteredFileExtension> <nonFilteredFileExtension>docx</nonFilteredFileExtension> </nonFilteredFileExtensions> </configuration> </plugin>

问题二、图片插入相关问题

图片采用{{@picture}}标签进行插入,如果传入dataMap的picture为空,则会报异常。但是我们经常遇到对象列表,有的带图片有的不带的情况,这种情况则像下述方案解决:

通过嵌套标签解决

js
展开代码
{{?pictures}} {{@picture}} {{/pictures}}

把picture转化为列表,这样为空时该标签内容默认不展示

本文作者:刘涛

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!