2017-03-13 3 views
0

Ich bin in einem Dienst mit einer geplanten Aufgabe, und ich möchte ein Objekt aus der Datenbank abrufen. Es hat EAGER-Assoziationen, also sollte die Find-Methode es total bekommen.Association OneToMany nicht mit Repository für eine geplante Aufgabe abgerufen

@Service 
public class CustomTask { 

    @Autowired 
    CustomRepository customRepository; 

    @Scheduled(fixedRate = 1000) 
    public void action() { 
     customRepository.find(1); 
    } 
} 

Aber hier funktioniert es nicht. Die Assoziationen sind null.

Während eines Spring Boot Controllers funktioniert die Repository-Methode einwandfrei.

Wissen Sie, dass ich mein gesamtes Objekt in dieser geplanten Methode eines Dienstes abrufen kann?

Antwort

0

Der geplante Task wird zu Beginn der App aufgerufen, zu einem Zeitpunkt, an dem die Umgebung möglicherweise nicht vollständig initialisiert wird.

Mit einer anfänglichen Verzögerung der Aufgabe, kann ich mein ganzes Objekt zugreifen:

@Scheduled(initialDelay=10000, fixedRate = 1000) 

NB: Es ist mehr ein Problem zu umgehen als eine Lösung.

Verwandte Themen