我在resources.xml中为grails-groovy应用程序定义了一些bean,如下所示:
<beans>
<bean id="reportManager" class="gra.reports.ReportManagerImpl">
<property name="reportLocation" value="c://reports//"/>
<property name="reportDefinitions">
<map>
<entry key="userTransactionReport">
<ref local="userTransactionReport"/>
</entry>
</map>
</property>
<property name="parameterCodeMap">
<bean class="org.apache.commons.collections.map.CaseInsensitiveMap">
<constructor-arg>
<map>
<entry key="employeeId" value="1"/>
<entry key="reourceId" value="2"/>
<entry key="eventType" value="3"/>
<entry key="objectName" value="4"/>
<entry key="fromDate" value="5"/>
<entry key="toDate" value="6"/>
</map>
</constructor-arg>
</bean>
</property>
</bean>
<bean id="userTransactionReport" class="gra.Reports">
<property name="reportname" value="User Transaction Report"/>
<property name="reportxml" value="UserTransactionReport.jrxml"/>
<property name="paramexists" value="TRUE"/>
<property name="paramMap">
<map>
<entry key="employeeid" value="1">
</entry>
</map>
</property>
</bean>
</beans>
我正在访问控制器中的第一个bean作为def reportManager; 然后我尝试做def required_report = reportManager.reportDefinitions.get('userTransactionReport');
我收到错误消息“无法获取null对象的属性reportDefinition,这意味着ReportManager为null。 我在指定的路径中定义了ReportManagerImpl,如下所示:
package gra.reports
class ReportManagerImpl {
String reportLocation;
def reportDefinitionsMap;
def parameterCodeMap;
}
我是否需要在某处实例化bean?
谢谢。
Priyank