尝试使用 Ireport 将条形码放入报告中时,我遇到了这个奇怪的错误。
我已经创建了一个名为“msg”的参数,但我不断收到此错误。有什么问题?
尝试使用 Ireport 将条形码放入报告中时,我遇到了这个奇怪的错误。
我已经创建了一个名为“msg”的参数,但我不断收到此错误。有什么问题?
我将条形码提供程序更改为 Barbecue,一切运行良好。
这个java.lang.NullPointerException: Parameter msg must not be empty错误的主要原因是因为显然来自单词本身的空指针异常。您的参数“msg”为空或没有值。确保它抓住了传递给它的价值。
我有同样的问题,据我所见,许多人都有同样的问题。我不擅长 Jasper,但这是我的解决方案。
原因:出现问题的原因是,在打印时选项部分下的条形码属性中缺少值:当表达式时打印。
解决方案:为条形码值设置一个布尔返回值,如下所示: $F{BARCODE}.contains( $F{BARCODE} )
简短说明:在我的理解中,这个值是作为条形码生成器barcode4j的MSG参数传递的。当为 null 时,它会按预期抛出异常。所以我们需要设置一个值。预期的值是布尔类型。我有一个名为 BARCODE 的字段。所以我只是放了一个上面的代码,上面写着检查条形码字符串是否有条形码字符串值。这就像说当 1=1 时。这将返回一个布尔值。因此,所有条件都满足。当字段有值时,您将在输出中看到条形码。
为什么我对这个解决方案不以为然,而不仅仅是用烧烤代替它:当我更改条形码类型时,格式发生了变化,使用输出的人只是不高兴,因为视觉上看起来不同。所以我不得不使用barcode4j,我必须解决这个问题。希望能帮助到你。干杯。