Spring中Quartz的Job配置问题
| java代码: |
|
public void prepare() throws ClassNotFoundException, NoSuchMethodException { if (this.arguments == null) { Class[] argTypes = new Class[this.arguments.length]; // Try to get the exact method first. … |
而在Spring的配置中Job的定义是:
| XML代码: |
|
<bean id=”settlementJob” class=”org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean“> |
被调用的targetObject的接口
| java代码: |
|
public interface SettlementBizFacade {
void doSettlement(UserDto byUser); //原来是doSettlement() … } |
可以看到由于没有设置arguments,所以Spring会在启动时去找不带参数的doSettlement方法,所以肯定找不到,在启动的时候就会报错。
如果一定要这样要调用这个函数,必须设置arguments, Spring会根据arguments的Class来找被调用方法。
所以我在我的接口中多加了一个“doSettlement()”方法……. -_-!


Twitter
Google Profile
Picasa Web Album
Google Reader
Flickr
豆瓣网
有话请说,有屁请憋住!