【发布时间】:2013-01-11 15:06:57
【问题描述】:
有可能我应该重复使用我现有的问题。 Connecting a groovy application to SQL server Express
但这似乎有点不同。这个问题是在配置测试应用程序时提出的,现在我正在做真实的事情,这是真正出错的时候。
如您所见,Jar 文件位于我的库和类路径中
我的数据源配置如下(几乎是我的工作示例中的复制粘贴作业)
dataSource {
username = "sa"
password = "password"
url = "jdbc:sqlserver://localhost:1433;databaseName=TimeTracker"
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
dialect = "org.hibernate.dialect.SQLServerDialect"
我在 grails run-app 上收到以下错误,欢迎任何建议
Error 2013-01-27 16:09:06,772 [localhost-startStop-1] ERROR context.GrailsContextLoader
- Error executing bootstraps: Error creating bean with name 'transactionManagerPostProcessor':
Initialization of bean failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'transactionManager': Cannot resolve reference to bean 'sessionFactory'
while setting bean property 'sessionFactory'; nested exception is
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory':
Cannot resolve reference to bean 'lobHandlerDetector' while setting bean property
'lobHandler'; nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'lobHandlerDetector':
Invocation of init method failed; nested exception is
org.springframework.jdbc.support.MetaDataAccessException:
Error while extracting DatabaseMetaData;
nested exception is org.apache.commons.dbcp.SQLNestedException:
Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver'
Message: Error creating bean with name 'transactionManagerPostProcessor':
Initialization of bean failed; nested exception is
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'transactionManager':
Cannot resolve reference to bean 'sessionFactory' while setting bean property
'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory': Cannot resolve reference to bean 'lobHandlerDetector'
while setting bean property 'lobHandler'; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'lobHandlerDetector': Invocation of init method failed; nested exception is
org.springframework.jdbc.support.MetaDataAccessException:
Error while extracting DatabaseMetaData; nested exception is
org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class
'com.microsoft.sqlserver.jdbc.SQLServerDriver'
【问题讨论】:
-
要检查您是否可以使用“def classLoader”将 classLoader 注入引导程序并尝试 def driverClass = Class.forName('com.microsoft.sqlserver.jdbc.SQLServerDriver', true, classLoader)。如果没有返回类,则表示它不在类路径中。还要检查指定的类是否在您的 jdbc 驱动程序 jar 版本中。
-
恐怕错误仍然存在,如上所述,因为我已经使用另一个更简单的应用程序对此进行了测试,使用相同的 JDBC .jar,驱动程序肯定存在。真的需要帮助我真的卡住了
-
使用 'grails war' 命令创建一个 WAR 并检查是否将 lib 添加到文件中。你也尝试过 Class.forName() 如前所述?
标签: grails jdbc groovy datasource sql-server-express