我们如何在 Spring Batch 中正确配置 Sybase 数据源?
目前我正在使用 JdbcPagingItemReader 读取数据库并使用 Tomcat DBCP 创建数据源。但是,批处理运行时会出现以下错误。
Caused by: java.lang.IllegalArgumentException: DatabaseType not found for product name: [Sybase IQ]
at org.springframework.batch.support.DatabaseType.fromProductName(DatabaseType.java:77)
at org.springframework.batch.support.DatabaseType.fromMetaData(DatabaseType.java:108)
at org.springframework.batch.core.repository.support.JobRepositoryFactoryBean.afterPropertiesSet(JobRepositoryFactoryBean.java:162)
at org.springframework.batch.core.configuration.annotation.DefaultBatchConfigurer.createJobRepository(DefaultBatchConfigurer.java:82)
at org.springframework.batch.core.configuration.annotation.DefaultBatchConfigurer.initialize(DefaultBatchConfigurer.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:344)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:295)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:130)
... 13 more
作为参考,我目前是用于连接的 JConn4-7.0 jar。尽管 [为 Oracle 更改了池属性],但连接到 Oracle 数据库没有问题。
任何见解都会有所帮助。
为了清晰/可读性,请随时编辑问题。