2014-08-27 78 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