自动连线注释不起作用。我认为 Timertask 或 run 方法一定有问题。我的其他类工作正常(我的意思是 Autowired 注释初始化 genericService 没有任何问题)但在这个类中 genericService 值为空。有什么想法吗?
public class UsersUpdateTask extends TimerTask {
@Autowired
GenericService genericService;
@Override
public void run() {
//genericService.save() gives null pointer.
}
}
我的 applicationContext 定义;
<bean id="usersUpdateTask" class="myPackage.UsersUpdateTask">
</bean>
<bean id="genericLogger" class="utilPack.Logger">
</bean>
<bean id="genericService" class="servicePack.GenericService">
这个类完美地工作;
public class Logger implements Serializable {
@Autowired
private GenericService genericService; //works fine
.....
}
另一个类中有一个方法可以调用UsersUpdateTask的run方法;
public void updateUsersList(){
timer.schedule(new UsersUpdateTask(), 1000, 60*60*1000);
}