【发布时间】:2018-02-04 09:33:44
【问题描述】:
早安,
我尝试在我的应用程序中使用 POI 来加载 Excel 表格。 在本地 tomcat 上一切正常,但是当我将它移动到在 Java 8 上运行的服务器 WebLogic 12.2 时,出现如下错误。 我尝试了从 POI 3.8 到 3.17(最新)的所有版本,但它们都没有在服务器上正常工作。
java 库的错误检查
java.lang.ExceptionInInitializerError 在 org.apache.poi.openxml4j.opc.OPCPackage.init(OPCPackage.java:161) 在 org.apache.poi.openxml4j.opc.OPCPackage.(OPCPackage.java:141) 在 org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:97) 在 org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:324) 在 org.apache.poi.util.PackageHelper.open(PackageHelper.java:37) 截断。查看完整堆栈跟踪的日志文件
引起:java.lang.ClassCastException: com.ctc.wstx.stax.WstxEventFactory 无法转换为 javax.xml.stream.XMLEventFactory 在 javax.xml.stream.XMLEventFactory.newInstance(XMLEventFactory.java:30) 在 org.apache.poi.openxml4j.opc.internal.marshallers.PackagePropertiesMarshaller.(PackagePropertiesMarshaller.java:41) 在 org.apache.poi.openxml4j.opc.OPCPackage.init(OPCPackage.java:161) 在 org.apache.poi.openxml4j.opc.OPCPackage.(OPCPackage.java:141) 在 org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:97) 截断。查看完整堆栈跟踪的日志文件
commons-codec-1.11 公共集合4-4.1 公共日志记录-1.2 junit-4.12 poi-3.17 poi-excelant-3.17 poi-ooxml-3.17 poi-ooxml-schemas-3.17 poi-scratchpad-3.17 xmlbeans-2.6.0
有什么可以错过的? 注意:我不能使用 Maven 或类似技术。
谢谢
【问题讨论】:
-
我认为您的数据在生成报告时从服务器(逐块)流式传输。等到从服务器收到完整的响应。然后去生成报告。或者另一个问题,任何路由器或交换机在收到完整数据之前就关闭了连接。
-
@AtaurRahmanMunna 该文件只有 27 KB。我做了什么,我得到了文件流,然后开始工作簿工作......
-
我认为
com.ctc.wstx.stax.WstxEventFactory异常告诉我们响应xml由于损坏而无法解组。 -
@AtaurRahmanMunna 你有什么想法来验证文件是否已编组?
-
看起来 weblogic 正在运送一个损坏的 XML 解析器。如果换成符合标准的会怎样?
标签: java apache-poi weblogic