空对象引用上的 iText Border.getWidth()'

iText Border.getWidth()' on a null object reference

我正在 android 应用程序中使用 iText 创建 PDF,该应用程序在 android 7 设备上 运行。

我的输入是一个 xml 文件,其中包含一些显示在 pdf 中的信息。 在 xml-content 的某些星座中,我遇到以下异常:

java.lang.NullPointerException: Attempt to invoke virtual method 'float com.itextpdf.layout.border.Border.getWidth()' on a null object reference
at com.itextpdf.layout.renderer.TableRenderer.drawBorders(TableRenderer.java:736)
at com.itextpdf.layout.renderer.TableRenderer.drawChildren(TableRenderer.java:562)
at com.itextpdf.layout.renderer.AbstractRenderer.draw(AbstractRenderer.java:314)
at com.itextpdf.layout.renderer.TableRenderer.draw(TableRenderer.java:489)
at com.itextpdf.layout.renderer.DocumentRenderer.flushSingleRenderer(DocumentRenderer.java:118)
at com.itextpdf.layout.renderer.RootRenderer.flush(RootRenderer.java:156)
at com.itextpdf.layout.Document.close(Document.java:114)

我无法在我的 IDE 中重现此错误,xml 在我的计算机上 运行 完全相同。

同样奇怪的是,我没有在显示 xml 的问题内容的区域使用边框。 我也没有使用这种方法:com.itextpdf.layout.border.Border.getWidth()

所以在我看来,这一定是 iText 与 android 结合使用的问题,否则我用错了。

我知道这不是很多有用的信息,但我只有这些了..

问题是使用的 iText 版本 (7.0.0) 中的错误。 这不会发生在较新的版本 (7.1.14) 中。