【问题标题】:tomcat jdbc and spring version compatabilitytomcat jdbc和spring版本兼容性
【发布时间】:2013-06-06 21:55:04
【问题描述】:

我正在使用 apache-tomcat-6.0.37, spring 2.5.6和tomcat-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吗?目前我无法切换到更高版本。我需要遵守吗?

【问题讨论】:

  • 你把这些罐子放在哪里?
  • jar 在类路径中。

标签: java spring tomcat6


【解决方案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

【讨论】:

    【解决方案2】:

    首先你的 JAR 已经过时了。

    1. 更新到最新的 Tomcat JDBC 池
    2. 将该 JAR 和您的驱动程序放入 $CATALINA_*/lib 和 nowhere 否则(* == HOME 或 BASE)
    3. 在您的context.xml 中声明您的DataSource
    4. 使用 JNDI 查找从您的 beans.xml 中检索 DataSource

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

    Here 是一个非常相似的问题。

    【讨论】:

      【解决方案3】:
      【解决方案4】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-08-27
        • 2013-08-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-03
        • 2015-04-18
        相关资源
        最近更新 更多