Я пытаюсь использовать остальные API, используя RestTemplate и сохраняю их внутри RxJava следующим образом.
@Scheduled(cron = "0 */5 11-14 * * SUN-THU", zone = "Asia/Kolkata")
public void getAndSaveData() throws ParseException {
RestTemplate restTemplate = new RestTemplate();
String date = CurrentDate.getSimpleDate();
boolean holiday = holidayController.isThisDayHoliday(date);
if (!holiday) {
Observable.just(restTemplate).observeOn(Schedulers.io()).subscribeOn(Schedulers.newThread()).unsubscribeOn(Schedulers.io()).subscribe(new Observer<RestTemplate>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(RestTemplate template) {
System.out.println("saving to database ");
HolidayData holidayData = template.getForObject(Constants.Holiday_API,
HolidayData.class); //getting the error here.
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
}
@Override
public void onComplete() {
}
});
}
}
Rest Api работает нормально, но когда Cron запускает этот метод. Я получаю
io.reactivex.exceptions.UndeliverableException: org.springframework.web.client.HttpClientErrorException: 424 null
Это указывает на то, что упоминалось выше в комментариях.
Что я здесь не так делаю? Любая помощь будет оценена. Спасибо