Я получаю DataSource Not Supported при использовании DataSouceBuilder

Я новичок в Spring-Batch (и Spring в целом) и слежу за онлайн документацией, чтобы научить себя, что мне нужно для выполнения этой задачи. Я пытаюсь подключиться к базе данных DB2.

Если я объявлю соединение DB2 с XML следующим образом:

    <bean id="wcs_dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.ibm.db2.jcc.DB2Driver" />
    <property name="url" value="jdbc:db2://127.0.0.1/DEV" />
    <property name="username" value="user" />
    <property name="password" value="pass5" />
</bean>

Затем загрузите его в мой код следующим образом:

@Bean
    public JdbcCursorItemReader<Product> databaseItemReader() {             
        ApplicationContext context = 
                 new ClassPathXmlApplicationContext("context-datasource.xml");
        DataSource dataSource = (DataSource) context.getBean("wcs_dataSource");
        ((ConfigurableApplicationContext)context).close();

        JdbcCursorItemReader<Product> result = new JdbcCursorItemReader<Product>();
        result.setDataSource(dataSource);
        result.setSql(sqlString);
        result.setRowMapper(new ProductRowMapper());
        return result;
    }

Работает отлично. Как бы я ни хотел использовать DataSourceBuilder, как показывают примеры, в конечном итоге я хотел бы получить:

@ConfigurationProperties(prefix="DEV.datasource")
public DataSource Wcs_DataSource(){
  return DataSourceBuilder.create().build();
}

Но почему-то это не работает. я получил

Вызвано: java.lang.IllegalStateException: не поддерживается поддерживаемый тип источника данных

Я также попробовал:

public DriverManagerDataSource dataSource() {               
    DataSourceBuilder DSBuilder = DataSourceBuilder.create();   
    DSBuilder.url("jdbc:db2://127.0.0.1/DEV");
    DSBuilder.username("user");
    DSBuilder.password("password");
    DSBuilder.driverClassName("com.ibm.db2.jcc.DB2Driver");
    DriverManagerDataSource result = (DriverManagerDataSource) DSBuilder.build();
    return result;      
}

И я получаю ту же ошибку. Если я запускаю его в отладчике, я вижу, что ошибка происходит в .build ().

Я уверен, что упускаю что-то простое, но я не могу понять это.

Ответы на вопрос(1)

Ваш ответ на вопрос