项目场景:
部署在weblogic的java web程序,拥有导出excel功能
问题描述
正式环境的程序在使用excel导出功能时报java.lang.NoClassDefFoundError: Could not initialize class org.apache.poi.POIXMLDocument异常
原因分析:
排查问题:
1、检查war包的lib文件夹是否存在poi相关依赖(我的war包里存在)
2、分析java.lang.NoClassDefFoundError异常。程序能正常启动也就是能通过编译,在运行时出现异常,找不到类无法初始化,推测可能是和weblogic依赖冲突的原因,导致无法正确加载类。
解决方案:
1、打开weblogic.xml文件
2、增加poi和xmlbeans
<prefer-application-packages>
<package-name>org.apache.poi.*</package-name>
<package-name>org.apache.xmlbeans.*</package-name>
</prefer-application-packages>