gpt4 book ai didi

java - Tomcat 和 JDBC

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:25:03 25 4
gpt4 key购买 nike

我正在尝试在 Tomcat 上配置以下内容。

Resource auth="Container" name="jdbc/yourDataSourceName"
driverClassName="oracle.jdbc.OracleDriver"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
type="oracle.jdbc.pool.OracleDataSource"
connectionCacheProperties="{}"
connectionCachingEnabled="true"
user="foo"
password="bar"
url="jdbc:oracle:thin:@foo.bar.com:1521:foobar"

当我将以下内容放入我的应用 META-INF/context.xml 文件中时,出现以下错误:

java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.BasicDataSource cannot be cast to oracle.jdbc.pool.OracleDataSource

当我将其移动到 $TOMCAT_HOME/conf/context.xml 时,它工作正常。它不允许我配置特定于应用程序。有什么想法吗?

我的应用程序文件夹的 $TOMCAT_HOME/libWEB-INF/lib 中都有 ojdbc6.jar。请指教。我错过了什么吗?感谢您的宝贵时间。

最佳答案

您可以尽量不要在数据源配置中使用特定的 Oracle 类,例如“OracleDataSourceFactory”。看来 Oracle Conn.pool 与 DBCP 不兼容。仅定义 driverClass。

你可以尝试这样的事情:

<Resource
name="jdbc/yourDataSourceName" auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@foo.bar.com:1521:foobar"
user="foo"
password="bar"
maxActive="5" maxIdle="1" maxWait="-1"/>

希望对你有帮助

关于java - Tomcat 和 JDBC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7081930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com