PDFBox版本3.0.0 请帮忙。尝试拆分 pdf 文件并引发异常: java.lang.NullPointerException 在 org.apache.pdfbox.cos.COSArray.getIndirectObjectKeys(COSArray.java:768)
它在这一行失败的原因是:
766:for (COSBase cosBase : objects) 767: { 768: COSObjectKey cosBaseKey = cosBase.getKey();
coseBase 为 null,这就是 getKey() 失败的原因。
应该对 null 进行测试来防止这种情况发生。
对象数组包含:
[null, COSName{XYZ}, COSFloat{80.787}, COSFloat{686.677}, COSNull{}]
另外,第 748 行的 getIndirectObjectKeys 方法仅检查是否为 null,而我要拆分的 individualObjects 数组的 pdf 文件不是 null,而是空; IE。, [] 代码应该测试空性而不仅仅是空性。
746:public void getIndirectObjectKeys(List<COSObjectKey> indirectObjects) 747: { 758: if (indirectObjects == null)
这里的问题在于 PDFBox Splitter 类代码。
有什么办法可以避免这个问题吗? 非常感谢您的帮助
我正在尝试拆分 pdf 文件
我可以确认第 768 行中报告的第一个问题。恕我直言,第二个问题不会发生,因为只有非空值被添加到相关列表中。
我已经创建了票证https://issues.apache.org/jira/browse/PDFBOX-5707。如果可用,请添加第二个 pdf 样本。我很高兴纠正上面的说法;-)