连接异常:CannotGetJdbcConnectionException:无法加载JDBC驱动程序类[“com.microsoft.sqlserver.jdbc.SQLServerDriver”;]

时间:2013-06-30 11:30:56

标签: sql-server-2008 class jdbc driver

我在struts 1.3中有一个web应用程序,其中包含hibernate作为ORM和spring作为上下文加载的AOP或者它通常使用。 我正在尝试在tomcat 6.0服务器中部署它。早些时候它连接到mysql并且它工作正常但现在我想将它与MS Sql server 2008连接,所以我下载了“sqljdbc”和“sqljdbc4”jar并将其放入“C:\ Program Files \ Apache Software Foundation \ Tomcat” 6.0 \ webapps \ web1 \ WEB-INF \ lib“我系统的位置。我在我的系统中安装了java 7.当我尝试运行它然后给出异常时:

org.apache.jasper.JasperException:org.springframework.beans.factory.BeanCreationException:在ServletContext资源[/WEB-INF/applicationContext-hibernate.xml]中定义创建名为'dataSource'的bean时出错:错误设置属性值;嵌套异常是org.springframework.beans.PropertyAccessExceptionsException:PropertyAccessExceptionsException(1个错误);嵌套的propertyAccessExceptions是:[org.springframework.beans.MethodInvocationException:属性'driverClassName'抛出异常;嵌套异常是org.springframework.jdbc.CannotGetJdbcConnectionException:无法加载JDBC驱动程序类[“com.microsoft.sqlserver.jdbc.SQLServerDriver”;];嵌套异常是java.lang.ClassNotFoundException:“com / microsoft / sqlserver / jdbc / SQLServerDriver”;]

我的jdbc属性文件条目是:

jdbc.driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
jdbc.url="jdbc:sqlserver://localhost:1433/databaseName=DB_1"
jdbc.username="dipak";
jdbc.password="";

hibernate.dialect=org.hibernate.dialect.SQLServer2008Dialect
  

的ApplicationContext-Hibernate.xml

条目是:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="${jdbc.driverClassName}" />
    <property name="url" value="${jdbc.url}" />
    <property name="username" value="${jdbc.username}" />
    <property name="password" value="${jdbc.password}" />
</bean>

请帮我解决这个问题,我谷歌很多,尝试了很多解决方案,但还没有成功,所以任何帮助都会非常感激。

如果您需要任何其他/更多信息,请告知我们。

谢谢, -Dipak

1 个答案:

答案 0 :(得分:1)

该JAR的错误点。 Tomcat 6及更高版本希望在Tomcat服务器/ lib中找到它,而不是你的应用程序WEB-INF / lib。移动它,你会看到更好的结果。

确保您的网址语法正确无误:

http://msdn.microsoft.com/en-us/library/ms378428(v=sql.90).aspx