Как мы можем переопределить getJobExplorer() при создании SpringBatchConfig?

#java #spring #spring-boot

Вопрос:

Я расширил свой SpringBatchConfig из BatchConfigurer, и все прошло правильно, но когда дело доходит до getJobExplorer, он возвращает исключение NullPointerException при вызове:

 

    @Override
    @Bean
    public JobExplorer getJobExplorer() throws Exception {
        return jobExplorer;
    }

 

Комментарии:

1. Вы должны создать jobExplorer просто возвращающее неинициализированное поле, которое, очевидно, приведет к нулевому указателю.

Ответ №1:

Я сделал что-то подобное и работал

 public JobExplorer getJobExplorer() throws Exception {
        JobExplorerFactoryBean jobExplorerFactoryBean = new JobExplorerFactoryBean();
        jobExplorerFactoryBean.setDataSource(dataSource);
        jobExplorerFactoryBean.afterPropertiesSet();
        return jobExplorerFactoryBean.getObject();
    }