user1854751
user1854751

Reputation: 107

Connecting a groovy application to SQL server Express

I was following the tutorial below but there must be some significant steps where knowledge, that I don't have, is being assumed.

http://padcom13.blogspot.co.uk/2011/01/setting-up-sql-server-2008-express-to.html

below is the setup in my datasource.groovy

username = "sa"
password = ""
url = "jdbc:sqlserver://localhost:1433;databaseName=Sandpit"
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
dialect = "org.hibernate.dialect.SQLServerDialect"

and below is the error popping up on run app command

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'

Been working on this a couple of days without seeing my app run..... any advice?

Upvotes: 2

Views: 4556

Answers (2)

Martin L.
Martin L.

Reputation: 3036

We are doing the same thing like you. Therefor, we have the sqljdbc.jar in our /lib -directory.

In our DataSource.groovy we have then:

dbCreate = "update" // one of 'create', 'create-drop','update'
username = "dbo"
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
url = "jdbc:sqlserver://devdb02:1433;databaseName=my_database;"

I remember that just the .jar is not enough, I think you need to install a small part into your windows/unix-directory e.g. from here:

http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774

(that's also needed if you maybe use PHP with MSSQL)

Upvotes: 0

user800014
user800014

Reputation:

The root cause is Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver'

That's because your driver is missing in the classpath. In the case of SQL Server you need to copy the jar to the lib folder.

In other cases like MySQL you can declare as a maven dependency.

Upvotes: 4

Related Questions