首页 > 解决方案 > 使用 SP24 for Eclipse 运行 Crystal 报表时出现 NullPointerException

问题描述

我们正在尝试升级到 Crystal Report for Eclipse 的 SP24,但发现我们的一些报告在生成报告时失败并出现 NullPointerException。我在下面包含了堆栈跟踪 - 有人知道可能出了什么问题或有任何解决方法吗?

Changing Main Report Table Connection Info
Changing Sub Report Table Connection Info
Setting Parameters of Main Reports
Starting Verify database
Completed Verify database
Setting Parameters of Sub Reports
com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: java.lang.NullPointerException---- Error code:-2147467259 Error code name:failed
    at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.if(SourceFile:238)
    at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:148)
    at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:129)
    at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:112)
    at us.nm.state.hsd.aspen.business.batch.rp.crystal.RpJRCExportReport.runReportExport(RpJRCExportReport.java:742)
    at us.nm.state.hsd.aspen.business.batch.rp.crystal.RpScheduleReportRun.process(RpScheduleReportRun.java:177)
    at us.nm.state.hsd.aspen.business.batch.rp.crystal.RpScheduleReportRun.drive(RpScheduleReportRun.java:263)
    at us.nm.state.hsd.aspen.business.batch.rp.crystal.RpScheduleReportRun.main(RpScheduleReportRun.java:286)
Caused by: java.lang.NullPointerException
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.d.a(SourceFile:154)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.ObjectFormatter.a(SourceFile:332)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.ObjectFormatter.a(SourceFile:250)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.u.a(SourceFile:922)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.u.e(SourceFile:784)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.f.e(SourceFile:383)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.u.for(SourceFile:242)
    at com.crystaldecisions.reports.formatter.formatter.objectformatter.aa.a(SourceFile:64)
...

标签: javaeclipsecrystal-reports-2016

解决方案


以防万一其他人在这里遇到同样的问题。

问题是:较新的 JDK 版本未附带 Crystal Report 引擎所期望的 lib/fonts 文件夹。

一个有点不满意但可行的解决方案是:

  1. 创建一个字体文件夹 -> %JAVA_HOME%/lib/fonts
  2. 将字体从“Windows\Fonts”复制到 %JAVA_HOME%/lib/fonts。

那么问题应该就解决了。


推荐阅读