0

我正在使用apache-tomcat-6.0.37spring 2.5.6tomcat-jdbc-7.0.19 。在 xml 文件中配置org.apache.tomcat.jdbc.pool.DataSource时,我收到此错误:

org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.apache.tomcat.jdbc.pool.DataSource].

spring 2.5.6 不支持 tomcat-jdbc-7.0.19 吗?它需要更高版本的spring吗?目前我无法切换到更高版本。我需要符合吗?

4

4 回答 4

1

现在你得到的错误是找不到类,这意味着下面的类不在类路径中。您应该检查 jar 是否存在于类路径中。

可能的位置(因为它没有随 tomcat-6.x 一起提供):

  1. WEB-INF/lib 目录war文件。

通过阅读文档,我猜 tomcat-jdbc 是在 tomcat-7.x 中引入的东西,而不是在 tomcat-6.x 中,所以我怀疑它是否会按预期工作。

感兴趣的链接:http: //people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html

于 2013-06-11T06:30:27.047 回答
0

这两个堆栈溢出链接将解决您的问题。

  1. org.springframework.beans.factory.CannotLoadBeanClassException:找不到类

  2. Spring Web App - 由 Java.lang.ClassNotFoundException 引起的 CannotLoadBeanClassException

于 2013-06-11T06:30:24.703 回答
0

首先,您的 JAR 已经过时。

  1. 更新到最新的 Tomcat JDBC 池
  2. 将该 JAR您的驱动程序放入$CATALINA_*/lib其他任何地方*==HOMEBASE
  3. 声明你DataSource在你的context.xml
  4. 使用 JNDI 查找DataSource从您的数据库中检索beans.xml

只要您运行 Java 6,Tomcat JDBC 池就可以与 Tomcat 6 完美配合。

是一个非常相似的问题。

于 2013-06-11T06:48:51.117 回答
0

问题解决了。虽然jar的类路径存在于eclipse生成的.class文件中。我忘记包含在build.xml中。所以在tomcat的lib中缺少jar。

于 2013-06-11T07:56:25.687 回答