广东网站备案,江西短视频搜索seo推荐,注册域名用个人还是公司好,帝国cms主题问题复现
项目上历史项目为解决漏洞扫描从Tomcat 6.0升级到了9.0版本#xff0c;服务启动的日志显示如下警告#xff0c;数据源是通过JNDI方式在server.xml中配置的#xff0c;控制台上狂刷无法找到表空间的错误#xff08;没截图#xff09;
报错#xff1a;
06-Nov-…问题复现
项目上历史项目为解决漏洞扫描从Tomcat 6.0升级到了9.0版本服务启动的日志显示如下警告数据源是通过JNDI方式在server.xml中配置的控制台上狂刷无法找到表空间的错误没截图
报错
06-Nov-2024 10:32:03.701 警告 [main] java.util.ArrayList.forEach Name 数据源 Property maxActive is not used in DBCP2, use maxTotal instead. maxTotal default value is 8. You have set value of 1000 for maxActive property, which is being ignored.
06-Nov-2024 10:32:03.708 警告 [main] java.util.ArrayList.forEach Name 数据源 Property maxWait is not used in DBCP2 , use maxWaitMillis instead. maxWaitMillis default value is PT-0.001S. You have set value of 10000 for maxWait property, which is being ignored.server.xml的JNDI数据源配置示意:
Context path/test docBasetest debug1 reloadabletrue crossContexttrueResource authContainer namejdbc/test typejavax.sql.DataSource driverClassNameoracle.jdbc.driver.OracleDriver maxActive1000 maxIdle300 maxWait10000 urljdbc:oracle:thin:10.2.99.99:1521/CLCDB usernametest passwordtest /
/Context问题出现原因
翻了翻官网迁移文档发现Tomcat 8开始修改了默认的内建数据源版本由DBCP1升级到DBCP2。DBCP1的实现被复制到工厂org.apache.tomcat.jdbc.pool.DataSourceFactoryDBCP2使用common-dbcp新实现。
https://tomcat.apache.org/migration-8.htmlhttps://tomcat.apache.org/tomcat-8.0-doc/jdbc-pool.html#JNDI_Factory_and_Type
解决方法
解决数据源问题需要从定义连接处的工厂决定使用哪个DBCP连接池版本。 在Resource添加 factoryorg.apache.tomcat.jdbc.pool.DataSourceFactory以指定连接池。
Context path/test docBasetest debug1 reloadabletrue crossContexttrueResource authContainer namejdbc/test factoryorg.apache.tomcat.jdbc.pool.DataSourceFactory typejavax.sql.DataSource driverClassNameoracle.jdbc.driver.OracleDriver maxActive1000 maxIdle300 maxWait10000 urljdbc:oracle:thin:10.2.99.99:1521/CLCDB usernametest passwordtest /
/Context