2014-08-27 42 views
0

我有一个Spring bean:碧玉中使用Spring豆报告

<bean 
    id="my.package.CustomerWrapper" 
    class="my.package.CustomerWrapper"> 

    <property name="customerWrapperCache" ref="customerWrapperCache"></property> 
</bean> 

而且在JRXML:

<variable name="a_Info" class="java.lang.String" resetType="None"> 
    <variableExpression><![CDATA[my.package.CustomerWrapper.lookupWithMainAddress($P{cust_id}, "informationLine")]]></variableExpression> 
</variable> 

但这是抛出一个NullPointerException因为customerWrapperCache为空。

这样做的正确方法是什么?

回答

1

JasperReports未使用由Spring管理的CustomerWrapper bean,它创建了一个新实例,这就是为什么customerWrapperCache为空;

要在Jasper报告中使用Spring bean,您需要将bean作为参数传递给报告。请参阅Spring参考网站上的Jasper Reports - Populating Model and View