我克隆了一个在旧版本 (3.0.x) 中创建的新站点,但在从构造函数实例化 bean 时出现错误。
这是运行时异常:
Caused by: java.lang.RuntimeException: No suitable ClassLoader found for grab
jdbc 类的片段:
@Grab(group='org.springframework', module = 'spring-jdbc', version = '4.1.9.RELEASE')
@Grab(group='commons-dbcp', module='commons-dbcp', version='1.2.2')
@Grab(group='com.sap.cloud.db.jdbc', module='ngdbc', version='2.2.16')
import org.apache.commons.dbcp.BasicDataSource
import org.springframework.jdbc.core.JdbcTemplate
class SAPJdbcTemplate extends JdbcTemplate {
def SAPJdbcTemplate(BasicDataSource rq1DataSource, global) {
super()
rq1DataSource.setDriverClassName(global.getProperty("studio.db.driverClassName"))
rq1DataSource.setUrl(global.getProperty("studio.db.url"))
rq1DataSource.setUsername(global.getProperty("studio.db.username"))
rq1DataSource.setPassword(global.getProperty("studio.db.password"))
this.setDataSource(rq1DataSource)
}
}
豆从application-context.xml
<bean id="SAPJdbcTemplate" class="com.troo.services.SAPJdbcTemplate">
<constructor-arg index="0" ref="rq1DataSource"/>
<constructor-arg index="1" ref="crafter.propertyResolver"/>
</bean>