这是我的bean定义:
<bean id="myBean" scope="step" class="com.test.spring.batch.MyBean">
<property name="resources" value="#{ResourceUtils.getResources(jobExecutionContext['key'])}"/>
</bean>
我需要将一个Spring bean(从Spring Batch上下文)传递给util class ResourceUtils.getResources(String)
的静态方法,并将资源文件设置为MyBean属性。
现在Spring说Cannot resolve variable ResourceUtils
。
答案 0 :(得分:1)
根据Spring documentation,当你在SpEL表达式中使用类型时,你必须在下一个方向使用它:
<bean id="myBean" scope="step" class="com.test.spring.batch.MyBean">
<property name="resources" value="#{T(com.mypackage.ResourceUtils).getResources(jobExecutionContext['key'])}"/>
</bean>
换句话说,您必须使用T()
构造和完全限定的类名(在此示例中为com.mypackage
)。