如何在带有 MS SQL 服务器数据库的 netbeans 中使用 javafx 调试 iReport (JasperReport) 中的 java.lang.NullException 错误

How to debug java.lang.NullException error in iReport (JasperReport) using javafx in netbeans with MS SQL Server Database

我正在创建一个报告,主要是为我的项目使用 Netbeans IDE 8.2、JasperReport 6.0.0 和 iReport 5.6.0(实际上尝试了 JasperReport 6.2.0,但不幸的是出现了相同的结果)。

我可以预览结果,但不幸的是,每当我尝试保存 .jrxml 文件时。我有一个名为 java.lang.NullPointerException

的错误

我已经从互联网上搜索了一个解决方案,并尝试了所有我认为有用的解决方案,但我仍然在这里结束发帖。

这是堆栈跟踪。

java.lang.NullPointerException at com.jaspersoft.ireport.designer.JrxmlEditorSupport.run(JrxmlEditorSupport.java:267) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access0(EventQueue.java:97) at java.awt.EventQueue.run(EventQueue.java:709) at java.awt.EventQueue.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159) [catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

我希望用户输入的输出及其来自 SQL 服务器数据库的数据。

这是 iReport 中的错误,请参阅 bug report

用户 kizinfo 发现了这个解决方法。

after previewing (which saves the report successfully) just close and reopen the document before making any additional changes (so you can save it).

但是

iReport 是旧的 IDE 它在仅维护模式下受支持 ended December 31, 2015, probably you are better of switching to the latest IDE JasperSoft Studio

感谢大家的帮助,但在从另一个论坛阅读了这么多类似的错误后,我想出了如何解决这个问题。

首先,我将 Reports 属性 中的 Filter Expression 值更改为 new Boolean(true) 和值当没有数据所有部分,没有细节我不知道它如何以及为什么与过滤器表达式有关,但是是的,它可以工作现在很好。我可以将值传递给它的参数。