いくつかのメソッドを持つ 1 つの Annotation Bean があります。それは正常に動作します。
public @Controller("adminController") class AdminController {
...
private @Autowired AdminDAO adminDAO;
public void resetTemporalList() {
System.out.println("HE SIDO EJECUTADO.");
this.adminDAO.resetTemporalRegisters();
}
...
}
現在、1 つのクオーツ タスクを統合しています。しかし、以前のアノテーション Bean を呼び出す XML 定義 Bean をロードしています。
<bean id="resetTemporalRegisters" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="adminController" />
<property name="targetMethod" value="resetTemporalList" />
<property name="concurrent" value="false" />
</bean>
アプリを起動すると、次のエラーが表示されます。
原因: org.springframework.beans.factory.NoSuchBeanDefinitionException: 'adminController' という名前の Bean が定義されていません
問題は、Spring がアノテーション Bean の後に最初に XML Bean をロードし、この瞬間に「adminController」Bean が終了しないことだと思います...
どうすれば修正できますか?
解決しました!!
問題は、xml Bean 定義を applicationContext.xml に入れたことです。