Я хочу иметь аннотацию по расписанию для абстрактного класса, чтобы у дочерних классов не было аннотаций. Нечто похожее на это в абстрактном классе
@EnableScheduling
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
public abstract class AbstractTestClass {
@Bean
public String getDelay() {
return "1000";
}
@Scheduled(fixedRateString = "#{@getDelay}")
public void callScheduledMethod() {
getZeroBytesFile();
}
public abstract void getZeroBytesFile();
}
@Component
public class ChildClass extends AbstractTestClass {
@Override
public String getDelay() {
return "5000";
}
@Override
public void getZeroBytesFile() {
System.out.println("called");
}
}
@Component
public class OtherClass {
// This bean initialisation throws error
@AutoWired ChildClass childClass;
}
Но это не работает и выдает это исключение
org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'getDelay': Requested bean is currently in creation: Is there an unresolvable circular reference?
Любой указатель будет полезен. Заранее спасибо