我的Spring Bean定义为:
<bean id="loyaltyPointsExpiringJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="name" value="Loyalty Points Expiring Job Trigger" />
<property name="jobDetail" ref="loyaltyPointsExpiringJobDetail" />
<property name="cronExpression" value="${prop.loyalty.expiring.points.job.cron}"/>
<property name="timeZone" value="${prop.loyalty.expiring.points.timezone}"/>
</bean>
但是,属性prop.loyalty.expiring.points.timezone
导致TypeMismatchException
出现以下消息:
org.springframework.beans.TypeMismatchException:无法将类型“ java.lang.String”的属性值转换为属性“ timeZone”的必需类型“ java.util.TimeZone”;嵌套异常是java.lang.IllegalArgumentException:无效的时区规范'$ {prop.loyalty.expiring.points.timezone}'
请指导。
答案 0 :(得分:0)
这很简单,您可能需要为timeZone
对象定义一个bean,并找出使用字符串的构造函数,并传递所需的值。